Main Page
Jump to navigation
Jump to search
MediaWiki has been installed.
Consult the User's Guide for information on using the wiki software.
== Getting started == * Configuration settings list * MediaWiki FAQ * [https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/ MediaWiki release mailing list] * [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language] * [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]
== Import CustomQueryPage == * CustomQueryPage for mw1359
=== Installing CustomQueryPage === # Download the bundle:wget https://mw.eckford.ca/downloads/CustomQueryPage-mw1359.tar.gz# Extract it into your extensions folder:tar -xzf CustomQueryPage-mw1359.tar.gz -C /srv/mediawiki/ extensions# EditLocalSettings.phpand addwfLoadExtension( 'CustomQueryPage' );# Runphp maintenance/update.php --quick# VisitSpecial:CustomQuerySettings, set the ROUTINE tag (for example,ROUTINE_4.110), and confirmSpecial:ApprovedManuals.
= Where We Stand = * CustomQueryPage now ships with a simplified clone path: Special:CustomQuerySettings copies the mw_tag_pages rows from ROUTINE_4.110 to ROUTINE_4.111, clones the mw_tags row, and immediately points the listing at the new tag. Success banner fixed; README documents the “Quick clone workflow.” * On sh1re/sh0re we never finished the MediaWiki core patch that deletesmw_logging.log_user*, so we seededmw_customquerypage_settingsmanually to keep the UI working.
== Why mw_tags felt “bypassed” == * On dev we inserted the active tag row directly intomw_customquerypage_settings; the clone form still expects the normalmw_tags/mw_tag_pagestables. * If those tables contain the 4.110 data (they should after your MySQL import), the UI reuses them immediately. * There’s nothing special inLocalSettings.php; MediaWiki core creates those tables. Our extension simply uses the load balancer to read/write them.
== Next steps if you want to exercise it on mw.eckfordc == # Copyextensions-mw1359/CustomQueryPageto the MW 1.39 box. # Ensuremw_tags/mw_tag_pageshave at least one ROUTINE (for example, importROUTINE_4.110). # VisitSpecial:CustomQuerySettingsand confirm the clone form works end-to-end (newmw_tagsrow, ApprovedManuals listing updated). # Once Lisa confirms the UI covers her release workflow (set tag + clone), document the progressive-release steps on her admin page.
= Recap (Last Week → Now) = * Finished the MW 1.35.9 build with the simplified clone workflow so Lisa can re‑tag releases (Set active tag + Clone ROUTINE_x.xxx → ROUTINE_y.yyy). * Deployed the same code to eckfordc (1.39) and sh1re/sh0re (1.35.9); all installs now have the expected tables (mw_tags, mw_tag_pages,mw_customquerypage_settings). * On sh1re/sh0re,update.phpstill complains about droppingmw_logging.log_user*; for now we seeded the settings row manually.
== Where we landed == * No human DB access: the release script populatesmw_tags/mw_tag_pages, and Lisa stays within the Special pages. * Special:CustomQuerySettings and Special:ApprovedManuals both confirmed forROUTINE_4.111; README documents the “Quick clone workflow.” * Nothing special required inLocalSettings.php; the extension uses the standard tables via MediaWiki services.
== Next step: JSON/API practice == * Since most releases are re‑tags, the clone form covers the common path. * For the rare “new” ROUTINE payload, define a JSON schema (page_id, rev_id, comment, wikitext, etc.) and build either a REST endpoint, an Action API module, or a CLI importer to ingest it inside MediaWiki.
= Routine Clone (eckfordc) = # One-time: flush Opcache so PHP reloads the helper script:
#::
if ( function_exists( 'opcache_reset' ) ) {
opcache_reset();
}
# Run the maintenance helper:
#::
php extensions/CustomQueryPage/maintenance/testClone.php \
--wiki=eckfordc_mw19424 \
--source=ROUTINE_4.110 \
--target=ROUTINE_4.111 \
--user=Admin
# Visit Special:ApprovedManuals; it should now show ROUTINE_4.111.
# If the clone fails, rerun step 2 and capture the error text so we can patch it.