Main Page: Difference between revisions
Jump to navigation
Jump to search
(formatting frenzie!) |
No edit summary |
||
| Line 1: | Line 1: | ||
<strong>MediaWiki has been installed.</strong> | <strong>MediaWiki has been installed.</strong> | ||
Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on using the wiki software. | Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on | ||
using the wiki software. | |||
== Getting started == | == Getting started == | ||
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list] | * [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list] | ||
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ] | * [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ] | ||
* [https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/ MediaWiki release mailing list] | * [https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/ MediaWiki release mailing | ||
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language] | list] | ||
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki] | * [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 == | == Import CustomQueryPage == | ||
* [https://mw.eckford.ca/downloads/CustomQueryPage-mw1359.tar.gz CustomQueryPage for mw1359] | * [https://mw.eckford.ca/downloads/CustomQueryPage-mw1359.tar.gz CustomQueryPage for mw1359] | ||
=== Installing CustomQueryPage === | === Installing CustomQueryPage === | ||
# Download the bundle: <code>wget https://mw.eckford.ca/downloads/CustomQueryPage-mw1359.tar.gz</code> | |||
# Extract it into your extensions folder: <code>tar -xzf CustomQueryPage-mw1359.tar.gz -C /srv/mediawiki/ | |||
extensions</code> | |||
# Edit <code>LocalSettings.php</code> and add <code>wfLoadExtension( 'CustomQueryPage' );</code> | |||
# Run <code>php maintenance/update.php --quick</code> | |||
# Visit <code>Special:CustomQuerySettings</code>, set the ROUTINE tag (for example, <code>ROUTINE_4.110</code>), | |||
and confirm <code>Special:ApprovedManuals</code>. | |||
= 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 deletes <code>mw_logging.log_user*</code>, so | |||
we seeded <code>mw_customquerypage_settings</code> manually to keep the UI working. | |||
= | == Why mw_tags felt “bypassed” == | ||
* On dev we inserted the active tag row directly into <code>mw_customquerypage_settings</code>; the clone form | |||
still expects the normal <code>mw_tags</code>/<code>mw_tag_pages</code> tables. | |||
* If those tables contain the 4.110 data (they should after your MySQL import), the UI reuses them immediately. | |||
* There’s nothing special in <code>LocalSettings.php</code>; 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 == | |||
# Copy <code>extensions-mw1359/CustomQueryPage</code> to the MW 1.39 box. | |||
# Ensure <code>mw_tags</code>/<code>mw_tag_pages</code> have at least one ROUTINE (for example, import | |||
<code>ROUTINE_4.110</code>). | |||
# Visit <code>Special:CustomQuerySettings</code> and confirm the clone form works end-to-end (new | |||
<code>mw_tags</code> row, ApprovedManuals listing updated). | |||
# Once Lisa confirms the UI covers her release workflow (set tag + clone), document the progressive-release | |||
steps on her admin page. | |||
== Next steps if you want to exercise it on mw. | |||
# Copy | |||
# Ensure | |||
# Visit | |||
# Once Lisa confirms the UI covers her release | |||
= Recap (Last Week → Now) = | = 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 + | |||
* Finished the | 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'', <code>mw_customquerypage_settings</code>). | |||
* Deployed the same | * On sh1re/sh0re, <code>update.php</code> still complains about dropping <code>mw_logging.log_user*</code>; for | ||
now we seeded the settings row manually. | |||
* | |||
== Where we landed == | == Where we landed == | ||
* No human DB access: the release | * No human DB access: the release script populates <code>mw_tags</code>/<code>mw_tag_pages</code>, and Lisa | ||
stays within the Special pages. | |||
* ''Special:CustomQuerySettings'' | * ''Special:CustomQuerySettings'' and ''Special:ApprovedManuals'' both confirmed for <code>ROUTINE_4.111</code>; | ||
documents the “Quick clone | README documents the “Quick clone workflow.” | ||
* Nothing special | * Nothing special required in <code>LocalSettings.php</code>; the extension uses the standard tables via | ||
services. | MediaWiki services. | ||
== Next step: JSON/API practice == | == Next step: JSON/API practice == | ||
* Since most releases are | * Since most releases are re‑tags, the clone form covers the common path. | ||
* For the rare “new” ROUTINE payload, | * 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) = | = Routine Clone (eckfordc) = | ||
# One-time: flush Opcache so PHP reloads the helper script: | # One-time: flush Opcache so PHP reloads the helper script: | ||
#::<pre>if ( function_exists( 'opcache_reset' ) ) { | #::<pre>if ( function_exists( 'opcache_reset' ) ) { | ||
opcache_reset(); | opcache_reset(); | ||
| Line 161: | Line 83: | ||
</pre> | </pre> | ||
# Visit [[Special:ApprovedManuals]]; it should now show <code>ROUTINE_4.111</code>. | # Visit [[Special:ApprovedManuals]]; it should now show <code>ROUTINE_4.111</code>. | ||
# If the clone fails, rerun | # If the clone fails, rerun step 2 and capture the error text so we can patch it. | ||
Revision as of 19:08, 21 January 2026
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.