Jump to content

Catalyst/Updates/2025-01-17

From Wikitech

Introduction

Project Catalyst is a team working on a kubernetes cluster as a service explicitly for CI and and exploratory testing. Our current effort is upgrading Patch Demo, to use kubernetes to provision and host wikis with custom extensions and skins. The Catalyst API wraps a small kubernetes cluster. A new instance of PatchDemo will consume this API. Our next effort will be to open the Catalyst API for more general workloads include wikis which rely on (micro)services.

Update

  • Status: WE6.2.2 Complete, Doing some clean up and preparation to continue with WE6.2.8
    • The team investigated some bugs that came up during the week and worked on some security and clean up tasks.
    • phab:T383736 Update catalyst-api repo path names
    • phab:T383632 Can't log in on catalyst patchdemos
    • phab:T381314 Make "Use Catalyst Backend" checked by default

Confirm if the hypothesis was supported or contradicted

  • The hypothesis was supported. Catalyst backend has been made the default wiki creation method in patchdemo.

Include any applicable metrics (baseline, target, and actuals)

  • Catalyst backend supports all options supported by the classic patchdemo backend.
  • https://patchdemo.wmcloud.org/ shows that since the catalyst backend was made the default wiki creation method on patchdemo on 1/10, 4 out of 9 wikis were created using the catalyst backend, which is a big change from the large majority of wikis being created using the patchdemo backend previously.
  • One service (wikifunctions) was added to catalyst, and a wiki using the service can be created via the catalyst API.
  • The wiki with wikifunctions enabled option has been used to create 4 environments in the past 7 days by the test platform team for running tests.
  • Replace the backend infrastructure of our existing shared MediaWiki development and testing environments (from apache virtual servers to kubernetes):
  • Extend its uses by developing one environment that includes MediaWiki, one or more Extensions, and one or more Services:
    • Yes Done (wikifunctions service)

Major lessons

  • The kubernetes cluster needed a lot more resources than anticipated for the environments and the repositories, which required extra time investigating and work on making larger volumes and cleaning up old files.
  • The time it takes to clone the repos, especially mediawiki/core can be quite long, and fast setup time is important to users. Efforts were made to improve cloning time in kubernetes environments by creating a wiki repo pool.

If applicable, potential next steps

  • We will continue our work in WE6.2.8, in which we will facilitate deployments of pre-merge patches for MediaWiki services, by running pre-merge tests for Wikifunctions.

--Jeena Huneidi (talk) 00:07, 18 January 2025 (UTC)[reply]