コンテンツへスキップ

設定

Rudelには2種類の設定があります。rudel_configWordPressオプションに保存される設定と、wp-config.phpで定義する定数です。

rudel_configオプション

設定はwp_optionsのrudel_configにある1つの配列に保存されます。オプションに値が書き込まれるまでは、すべてのキーで既定値が使われます。不明なキーは無視され、値は整数として保存されます。

キー 既定値 説明
max_sandboxes 0 サンドボックス数がこの数に達すると、新しいサンドボックスの作成を拒否します。0は上限なしを意味します。
max_disk_mb 0 サンドボックスディレクトリの容量がこのメガバイト数に達すると、新しいサンドボックスの作成を拒否します。複製されたテーブルは含まれません。0は上限なしを意味します。
default_ttl_days 0 ttl_daysまたはexpires_atを指定せずに作成した新しいサンドボックスの有効期限です。0は有効期限なしを意味します。
max_age_days 0 クリーンアップで、この期間より古いサンドボックスを削除します。0は経過期間のルールを無効にします。
max_idle_days 0 クリーンアップで、記録されたアクティビティ(サンドボックスへのリクエストまたはスナップショット)がこの期間ないサンドボックスを削除します。0はアイドル状態のルールを無効にします。
auto_cleanup_enabled 1 WP-Cronで毎時、クリーンアップポリシーを実行します。
auto_cleanup_merged 0 WP-Cronによるマージ済みブランチのクリーンアップも実行します。
expiring_environment_notice_days 0 自動化の実行ごとに、指定日数以内に期限切れとなるサンドボックスを収集し、rudel_after_automation_expiring_environmentsアクションに渡します。
auto_snapshot_before_restore 1 復元の前に毎回pre-restore-...スナップショットを保存します。

wp rudel statusは現在の値を表示します。

WP-CLIでオプションを書き込みます。省略したキーには既定値が使われます。

シェル
wp option update rudel_config '{"max_age_days":14,"max_idle_days":3,"auto_cleanup_merged":1}' --format=json

またはPHPから:

PHP
$config = new Rudel\RudelConfig();
$config->set( 'max_sandboxes', 20 );
$config->save();

変更後の次のリクエストで、WP-Cronイベントが登録または削除されます。自動化を参照してください。

定数

Rudelのブートストラップ行より前にあるwp-config.phpで、これらを定義します。

定数 既定値 説明
RUDEL_CLI_COMMAND rudel ルートWP-CLIコマンド名。
RUDEL_ENVIRONMENTS_DIR wp-content/rudel-environments サンドボックスディレクトリを格納するディレクトリ。テーマのアセットは常に/wp-content/rudel-environments/{id}/themesから配信されるため、別のディレクトリを使う場合も同じURLからアクセスできる必要があります。
RUDEL_RUNTIME_TABLE_PREFIX rudel_ WordPressプレフィックスの後に続くRudelテーブル名の一部。ランタイム状態を参照してください。
RUDEL_RUNTIME_TABLE_ENVIRONMENTS WordPressプレフィックスの後に続く、環境テーブルの完全な名前の上書き値。
RUDEL_RUNTIME_TABLE_WORKTREES WordPressプレフィックスの後に続く、worktreesテーブルの完全な名前の上書き値。
RUDEL_DB_DRIVER auto スタンドアロンRudel\Connectionアクセス用のドライバー:auto、mysqli、pdoのいずれか。WordPressリクエストでは常に$wpdbを使います。
RUDEL_GIT_AUTHOR_NAME Rudel チェックアウトにuser.nameがない場合、RudelがGit設定に書き込む作成者名。wp rudel pushコミットに使われます。
RUDEL_GIT_AUTHOR_EMAIL rudel@localhost チェックアウトにuser.emailがない場合、Rudelが書き込む作成者メールアドレス。

サンドボックスへのリクエスト内の定数

リクエストでサンドボックスが選択されると、ブートストラップによってコードから読み取れる定数が定義されます。特に有用なものは次のとおりです。

定数 値
RUDEL_ID サンドボックスID
RUDEL_PATH サンドボックスディレクトリ
RUDEL_TABLE_PREFIX サンドボックスのテーブルプレフィックス
RUDEL_THEME_SLUG サンドボックスから配信されるテーマ
RUDEL_HOST_URL、RUDEL_ENVIRONMENT_URL ホストとサンドボックスのURL
RUDEL_DISABLE_EMAIL true。送信メールはブロックされます

定数を直接読むより、Rudel::id()などのAPIメソッドを使ってください。

ブートストラップはWP_DEBUG、WP_DEBUG_LOG、WP_DEBUG_DISPLAY、WP_TEMP_DIR、WP_CACHE_KEY_SALTと8つの認証キーおよびソルトも定義します。ただし、wp-config.phpがまだ定義していないものに限ります。エラーログと分離を参照してください。