メディアウィキの自動アップグレード

メディアウィキの自動アップグレード

私の個人的なプロジェクト(Arch LinuxまたはDebian stable)で最新のMediaWikiを使用しています。私はそれを使用する唯一の人であり、MediaWikiをコア専用の方法で使用します(どの拡張もインストールしません)。

  • すべての最新機能を楽しむために、コアバージョンを常にアップグレードしたいと思います。

  • 毎日/毎週のバックアップがあります。

  • 頑張ったここを読んでくださいしかし、私は何も認識しませんでした自動アップグレード。

MediaWikiを自動アップグレードする正しい方法は何ですか?

ちなみに、これは特定のDebianベースの環境ですべてのDrupalアプリケーションをアップグレードする方法です。おそらく、Arch LinuxのMediaWikiでも同様のアプローチを取ることができます。

#!/bin/bash

cat <<-EOF > /etc/cron.daily/cron_daily
    #!/bin/bash
    for dir in ${drt}/*/; do
        if pushd "$dir"; then
            rws
                composer update drupal/* webflo/drupal-core-require-dev --with-dependencies
                drush updatedb
                drush cache:rebuild
            rws
        popd
        fi
    done 2> $HOME/myErrors
EOF

cat <<-EOF > /etc/cron.weekly/cron_weekly
    #!/bin/bash
    find "$drt" -path "*/cache/*" -type f -delete
    certbot renew -q
EOF

chmod +x /etc/cron{.daily,.weekly}

答え1

標準アップグレードプロセスは次のとおりです。

  1. ファイルを更新します。 gitを使用している場合、これは.tarballに似ていますgit checkout REL1_32。 tarballを使用している場合は、以前のバージョンに解凍することができます(ライブサーバーの場合は、古いバージョンと新しいバージョン用に別々のディレクトリを作成する方が良い方法です)。バージョンを変更してシンボリックリンクを使用して交換すると、問題が発生した場合にすばやく簡単に元に戻すことができます。
  2. 依存関係を更新します。 gitを使用している場合は、composer updateMediaWikiのルートディレクトリから実行してください。使用する場合サプライヤー買戻契約(おそらく悪い考えでしょう)、git checkoutも試してみてください。 tarballを使用している場合は、更新された依存関係を含めることができます(ただし、Composerの実行には何の害もありません)。
  3. アップグレードスクリプトを実行しますphp maintenance/update.php --quick

他のユーザーが使用するライブウィキの場合は、次の設定をしたい場合があります。$wgReadOnlyこのプロセスのために(またはユーザーを完全にブロックすることをお勧めします)。

一つあるドキュメントページしかし、mediawiki.orgのほとんどの内容と同様に、少し言葉が多すぎます...

関連情報