PowerSyncで時間指定して同期できるようにする方法

どうもユーキです。

今回は、PowerSyncで時間同期を実行できるようにする方法をまとめました。
こちらの記事でざっくり説明をしているんですが、詳細を書いていきます。

同期は同サーバー内で2段階まで可能

PowerCMSブログ「ステージングサーバー連携機能 初期設定例」
サーバー構成は上記の記事にかいてあるどれかに当てはまると思います。
今回は同一サーバー内にステージング環境、本番公開環境があるもので説明していきます。(例2を参照ください)
また、時間指定公開は10分おきに実行するものとします。

時間指定同期を設定

まずは、マニュアルやこちらの記事を参考に初期設定を完了させてください。

初期設定完了後、今すぐ同期で同期が実行できてることを確認してください。

ここからが本題です。

PowerCMSブログ「バックグラウンド処理の実行と設定」
PowerCMSブログ「PowerCMS 4 のタスクとワーカー」

①の記事にあるように時間指定で同期できるようにするには、run-periodic-tasksというスクリプトファイルをcronで定期的に実行するだけです。

②は特定のもののみを実行したい場合に使うことになります。

MTのtoolsというフォルダの中にrun-periodic-tasks, run-tasks, run-worker, run-worker-deamonというスクリプトファイルがあります。
run-periodic-tasksは、ほか3つのスクリプトを実行している感じになります。(多分w)

なので、同期はかけたいけど、記事の時間指定公開、非公開は実行したくない場合は、②のrun-tasksスクリプトで行いたいタスクだけを実行するようにします。

*/10 * * * * cd $MT_HOME && perl tools/run-tasks --tasks=StagingSync

②の記事では、「StagingSync 日時指定されたステージ環境への同期/公開環境への同期処理」と書いてあるので、この指定でcron実行すればうまくいきます。

About Me

プロフィール画像

ユーキと申します。北海道恵庭市という札幌と新千歳空港の間でフリーランスのWebエンジニアとして活動してます。

当サイトのブログでは、主にWeb制作全般、フリーランス周りの情報など色々なノウハウや知識を載せています。
その他日々気になったこと、思ったことも書いてます。

お仕事の相談など何かありましたら、お問い合わせかツイッターのDMからお気軽にご連絡くださいませ。

お問い合わせはこちら

ツイッターはこちら

ポートフォリオはこちら

Latest Posts

Popular Posts

TOP