소개
Rudel은 단일 호스트 WordPress 설치 안에 폐기 가능한 WordPress 샌드박스를 만듭니다.
각 요청에서 샌드박스를 선택합니다. 선택된 요청은 샌드박스의 복제된 WordPress 테이블과 활성 테마 사본을 사용하고, WordPress 코어, 플러그인 파일, 업로드 파일은 호스트와 공유됩니다.
샌드박스에 포함되는 항목
- 호스트 테이블의 사본. 사용자와 사용자 메타데이터를 포함하며 생성된 테이블 접두사 아래에 저장
- 테마 하나의 사본(하위 테마라면 상위 테마도 포함)을 샌드박스 디렉터리에 저장
- 호스트 WordPress MySQL 테이블의 수명 주기 메타데이터
샌드박스를 만들 때 사용자를 복사합니다. 이후에는 샌드박스와 호스트의 사용자 및 비밀번호가 서로 독립적으로 변경됩니다.
공유 상태로 유지되는 항목
- WordPress 코어 파일
- 플러그인 파일
- 업로드된 미디어 파일
이 경계는 의도적으로 설정되었습니다. Rudel은 멀티사이트나 두 번째 WordPress 설치 없이 에이전트, QA, 실험 및 위험한 변경 작업을 위한 빠른 요청별 샌드박스에 중점을 둡니다.
요청에서 샌드박스를 선택하는 방법
HTTP 요청은 X-Rudel-Environment 헤더 또는 rudel_environment 쿠키로 샌드박스를 선택하고, WP-CLI 명령은 RUDEL_ENVIRONMENT 환경 변수를 사용합니다. Rudel은 선택자를 인증하지 않습니다. 유효한 샌드박스 ID를 보내는 모든 클라이언트가 해당 샌드박스를 이용할 수 있습니다. 격리를 참조하세요.
기준 데이터
Rudel 런타임 레코드는 호스트 WordPress 데이터베이스에 저장됩니다:
wp_rudel_environmentswp_rudel_worktrees
설정은 rudel_config 옵션에 저장됩니다. 런타임 JSON 설정 파일은 없으며 SQLite 메타데이터 저장소도 없습니다.