Page MenuHomePhabricator

Redesign for wmcs custom puppet settings
Open, Needs TriagePublic

Description

We have a few problems:

  1. the Horizon UI doesn't maintain revision history
  2. the Wikitech hiera UI needs to go away in order to decouple keystone from Wikitech
  3. the Horizon UI is frustratingly slow

Here are proposed steps to address those:

  • Set up a git repo to store the classes and hiera from puppet. Each edit on Horizon will push a patch to that repo using a service user.
  • Add a faster-loading, yaml-only editing UI
  • <to do anytime a is complete> move all wikitech-hosted puppet config to Horizon
  • mark wikitech puppet pages read-only
  • <bonus points> remove the custom ENC and labspuppet API and have puppetmasters pull custom puppet classes and hiera directly from git
  • <even more bonus points> Change to one repo per project, have keystone write project adminship to ldap in a way that gerrit can consume it, thus giving +2/merge rights to project admins via gerrit.

Details

Related Gerrit Patches:
operations/puppet : productionwmcs puppet: remove the mwyaml hiera backend
mediawiki/extensions/OpenStackManager : wmf/1.35.0-wmf.5Make all hiera pages read-only
mediawiki/extensions/OpenStackManager : masterMake all hiera pages read-only
openstack/horizon/deploy : ocataUpdate wmf-puppet-dashboard submodule
openstack/horizon/deploy : ocataUpdate horizon and wmf-puppet-dashboard submodules
openstack/horizon/wmf-puppet-dashboard : ocataAdded a faster puppet-editing mode
openstack/horizon/wmf-puppet-dashboard : masterAdded a faster puppet-editing mode
openstack/horizon/wmf-puppet-dashboard : ocataCommit hiera and role changes to a git archive
openstack/horizon/wmf-puppet-dashboard : masterCommit hiera and role changes to a git archive
operations/puppet : productionhorizon local_settings: quote PUPPET_GIT_REPO_USER
operations/puppet : productionhorizon: create directory to hold the instance-puppet-user key
operations/puppet : productionHorizon: set up access to a git repo to archive instance puppet config

Event Timeline

Andrew created this task.Oct 16 2019, 8:53 PM
Andrew updated the task description. (Show Details)Oct 16 2019, 8:55 PM
Andrew updated the task description. (Show Details)Oct 16 2019, 9:02 PM
Andrew updated the task description. (Show Details)Oct 16 2019, 9:07 PM
Andrew added a comment.EditedOct 16 2019, 9:15 PM

<Krenair> Alex Monk paladox, will gerrit create the submodule for us once we tell it to make the repo?
4:12 PM or is the actual creation of the submodule the responsibility of the repo creator?
New messages since you tabbed out
4:12 PM P<paladox> It's the responsability of the creator.
4:13 PM K<Krenair> Alex Monk alright so it just detects and updates submodules as appropriate, doesn't create them, mehh
4:13 PM P<paladox> yeh
4:13 PM If you take a look at mediawiki/extensions .gitmodule
I can help set up the repo
4:16 PM The git clone url has to be /r/ and must not be /r/p/

Andrew claimed this task.Thu, Oct 24, 2:15 PM

Change 546644 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[openstack/horizon/wmf-puppet-dashboard@master] Commit hiera and role changes to a git archive

https://gerrit.wikimedia.org/r/546644

Change 546651 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[operations/puppet@production] Horizon: set up access to a git repo to archive instance puppet config

https://gerrit.wikimedia.org/r/546651

Change 546651 merged by Andrew Bogott:
[operations/puppet@production] Horizon: set up access to a git repo to archive instance puppet config

https://gerrit.wikimedia.org/r/546651

Change 546734 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[operations/puppet@production] horizon: create directory to hold the instance-puppet-user key

https://gerrit.wikimedia.org/r/546734

Change 546734 merged by Andrew Bogott:
[operations/puppet@production] horizon: create directory to hold the instance-puppet-user key

https://gerrit.wikimedia.org/r/546734

Change 546737 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[operations/puppet@production] horizon local_settings: quote PUPPET_GIT_REPO_USER

https://gerrit.wikimedia.org/r/546737

Change 546737 merged by Andrew Bogott:
[operations/puppet@production] horizon local_settings: quote PUPPET_GIT_REPO_USER

https://gerrit.wikimedia.org/r/546737

Change 546644 merged by Andrew Bogott:
[openstack/horizon/wmf-puppet-dashboard@master] Commit hiera and role changes to a git archive

https://gerrit.wikimedia.org/r/546644

Change 546997 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[openstack/horizon/wmf-puppet-dashboard@ocata] Commit hiera and role changes to a git archive

https://gerrit.wikimedia.org/r/546997

Change 546997 merged by Andrew Bogott:
[openstack/horizon/wmf-puppet-dashboard@ocata] Commit hiera and role changes to a git archive

https://gerrit.wikimedia.org/r/546997

Andrew updated the task description. (Show Details)Wed, Oct 30, 1:44 PM

Change 547328 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[openstack/horizon/wmf-puppet-dashboard@master] Added a faster puppet-editing mode

https://gerrit.wikimedia.org/r/547328

Change 547330 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[openstack/horizon/wmf-puppet-dashboard@ocata] Added a faster puppet-editing mode

https://gerrit.wikimedia.org/r/547330

Change 547328 merged by Andrew Bogott:
[openstack/horizon/wmf-puppet-dashboard@master] Added a faster puppet-editing mode

https://gerrit.wikimedia.org/r/547328

Change 547330 merged by Andrew Bogott:
[openstack/horizon/wmf-puppet-dashboard@ocata] Added a faster puppet-editing mode

https://gerrit.wikimedia.org/r/547330

Change 547332 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[openstack/horizon/deploy@ocata] Update horizon and wmf-puppet-dashboard submodules

https://gerrit.wikimedia.org/r/547332

Change 547332 merged by Andrew Bogott:
[openstack/horizon/deploy@ocata] Update horizon and wmf-puppet-dashboard submodules

https://gerrit.wikimedia.org/r/547332

Change 548430 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[openstack/horizon/deploy@ocata] Update wmf-puppet-dashboard submodule

https://gerrit.wikimedia.org/r/548430

Change 548430 merged by Andrew Bogott:
[openstack/horizon/deploy@ocata] Update wmf-puppet-dashboard submodule

https://gerrit.wikimedia.org/r/548430

Andrew updated the task description. (Show Details)Mon, Nov 4, 6:34 PM
Andrew updated the task description. (Show Details)Wed, Nov 6, 12:17 AM

Change 548939 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[mediawiki/extensions/OpenStackManager@master] Make all hiera pages read-only

https://gerrit.wikimedia.org/r/548939

Change 548939 merged by jenkins-bot:
[mediawiki/extensions/OpenStackManager@master] Make all hiera pages read-only

https://gerrit.wikimedia.org/r/548939

Change 549124 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[mediawiki/extensions/OpenStackManager@wmf/1.35.0-wmf.5] Make all hiera pages read-only

https://gerrit.wikimedia.org/r/549124

Change 549124 merged by jenkins-bot:
[mediawiki/extensions/OpenStackManager@wmf/1.35.0-wmf.5] Make all hiera pages read-only

https://gerrit.wikimedia.org/r/549124

Andrew updated the task description. (Show Details)Wed, Nov 6, 11:00 PM

Change 549224 had a related patch set uploaded (by Andrew Bogott; owner: Andrew Bogott):
[operations/puppet@production] wmcs puppet: remove the mwyaml hiera backend

https://gerrit.wikimedia.org/r/549224

Change 549224 merged by Andrew Bogott:
[operations/puppet@production] wmcs puppet: remove the mwyaml hiera backend

https://gerrit.wikimedia.org/r/549224