Uživatel:Josmart/Upgrade na 1.36

From WikiSkripta

Aktualizace serveru[edit | edit source]

  • Odinstalovat Node.js a nainstalovat nvm
  • Odemknout knihovnu "ico-"
  • Aktualizovat server
  • Zkontrolovat, zda funguje php7-intl

Aktualizace wiki[edit | edit source]

  • Smazat vše kromě
    • .well-known
    • _*
    • cache
    • cirrus*
    • errorpages
    • extensions
    • images
    • share
    • sitemap
    • skins
    • tmp
    • CommonSettings.php
    • LocalSettings.php
    • symlinky na dumpy
    • favicon.ico
    • robots.txt
    • google*
    • icon*
    • manifest.json
    • offline.html
    • sw.js
    • test.php
    • *.sh
  • Nahrát nové verze souborů. Ze skins jen Vector.
  • Aktualizovat skins/MinervaNeue (git pull)
  • Aktualizovat všechny extensions (git pull)
  • VisualEditor a WikiEditor raději použít verze přibalené v instalaci.
  • Visual Editor potřebuje jinou konfiguraci v CS a LS a povolení /rest.php/ v nginx. NetworkAuth už není pro private wikis potřeba. Také je nutno u každého webu přidat
$wgTmpDirectory = '/usr/local/www/nginx/wikisite/tmp';
  • CirrusSearch + elasticsearch
    • Elasticsearch je nutné upgradovat na verzi 6.8.16. (kontrola curl -s localhost:9200)
    • zakomentovat "path.scripts" v elasticsearch.yaml.
    • Pak obnovit index: php extensions/CirrusSearch/maintenance/UpdateSearchIndexConfig.php --reindexAndRemoveOk --indexIdentifier now
  • Maps instalujeme přes composer ... změna v konfiguraci (Validator je requirement, i když není přímo volán z CS)
  • WikimediaMessages - přepsat definiční soubor
  • Nastavit wgLogo, i když se nepoužívá
  • Spravit $wgPasswordPolicy v CommonSettings, jinak se nejde přihlásit
  • Nastavit práva
  • Záloha databáze
  • delete from ipblocks where ipb_id=198;
  • delete from ipblocks where ipb_by=33;
  • Update DB
  • zprovoznit pywikibota
  • Zkontrolovat, že jsou aktuální datové soubory v mých extensions
    • CaptchaSettings
    • FilterAccess (testuj cron)
    • GlobalStats (testuj cron)
  • Smazat Slight
  • Převést ostatní wiki do medik skin. Wisky už nefunguje - zakázat pro všechny a přehodit to i uživatelům
php maintenance/userOptions.php skin --old "wisky" --new "medik"
  • Ověř, zda fungují cron jobs
  • Načítají se GA?
  • Fungují widgets?
  • Testuj mefadata a WSTools
  • Dát do kupy citoid a bettercomments
  • Upravit pohledy na wikidb

Opravy mých extensions[edit | edit source]

  • AdvancedUserStats: DB_MASTER = DB_PRIMARY, DB_SLAVE = DB_REPLICA, Unknown columns 'logging.log_user', 'revision.rev_user'. "_user" je teď actor.actor_user
  • CaptchaSettings: problémy s keší
  • CategoryHistory: DB_MASTER = DB_PRIMARY, DB_SLAVE = DB_REPLICA, $out->addWikiText deprecated, use $out->addWikiTextAsInterface instead
  • CCAgreement: používá cosi, co je v 1.36 deprecated - opravit
  • ContactUs: DB_MASTER = DB_PRIMARY, DB_SLAVE = DB_REPLICA
  • Decorations: $out->addWikiText deprecated, use $out->addWikiTextAsInterface instead
  • FeedbackUs: DB_MASTER = DB_PRIMARY, DB_SLAVE = DB_REPLICA
  • FilterAccess: změna poskytovatele DB
  • GlobalStats: $out->addWikiText deprecated, use $out->addWikiTextAsInterface instead
  • Mefadata: změna struktury databáze, upraveny dotazy. Rev_text_id neexistuje, nově content.content_address. Je ve tvaru "tt:id_v_tabulce_text. Může se změnit v další verzi MW.
  • PrintBook, zdá se, funguje
  • QuestyCaptchaGenerator: funguje
  • SimilarTitles: DB_MASTER = DB_PRIMARY, DB_SLAVE = DB_REPLICA
  • ThePlayer: funguje
  • URNames: používá cosi, co je v 1.36 deprecated
  • WikiZoomer: funguje
  • WSTools: změna struktury databáze, upraveny dotazy. Může se změnit v další verzi MW.

  • MedicalMediaPlayer zrušit? .. nejprve změnit nabídku sdílení na MM
  • RealTimeUsers ?

Nastavení pywikibota[edit | edit source]

  • user-config/password.txt root:wiki
  • pywikibot, requests, chardet stáhnout a nahrát do složky ručně. Neinstalovat přes pip.

Poznámky a chyby[edit | edit source]

  • V Mediawiki 1.36 je stále bug, který neumožní sdílení kódu dalšími weby (jako třeba wikilectures.eu). Je potřeba udělat úpravu v souboru "/includes/WebStart.php".
if ( $IP === false ) {
  //$IP = dirname( __DIR__ ); // původní špatný kód 1.32
  $IP = realpath( '.' ) ?: dirname( __DIR__ ); // funkční kód zkopírovaný z 1.28
}