diff --git a/components/Blueprints/Steps/class-importcontentstep.php b/components/Blueprints/Steps/class-importcontentstep.php index b09088560..490e61b89 100644 --- a/components/Blueprints/Steps/class-importcontentstep.php +++ b/components/Blueprints/Steps/class-importcontentstep.php @@ -67,7 +67,7 @@ private function importWxr( Runtime $runtime, array $content_definition, Tracker $import_process = $runtime->create_php_sub_process( $importer_script . <<<'PHP' - 'wxr', 'execution_context_root' => getenv('EXECUTION_CONTEXT') ? getenv('EXECUTION_CONTEXT') : null, @@ -75,7 +75,6 @@ private function importWxr( Runtime $runtime, array $content_definition, Tracker // @TODO: Support arbitrary media URLs to enable fetching assets during import. // 'media_url' => 'https://pd.w.org/' ]); -?> PHP , array( diff --git a/components/Blueprints/class-runner.php b/components/Blueprints/class-runner.php index 1daa3495a..e337a8b90 100644 --- a/components/Blueprints/class-runner.php +++ b/components/Blueprints/class-runner.php @@ -49,6 +49,7 @@ use WordPress\Blueprints\VersionStrings\WordPressVersion; use WordPress\ByteStream\ReadStream\FileReadStream; use WordPress\Filesystem\Filesystem; +use WordPress\Filesystem\FilesystemException; use WordPress\Filesystem\InMemoryFilesystem; use WordPress\Filesystem\LocalFilesystem; use WordPress\HttpClient\ByteStream\RequestReadStream; @@ -288,12 +289,16 @@ public function run(): void { $progress->finish(); } finally { // TODO: Optionally preserve workspace in case of error? Support resuming after error? - LocalFilesystem::create( $temp_root )->rmdir( - '/', - array( - 'recursive' => true, - ) - ); + try { + LocalFilesystem::create( $temp_root )->rmdir( + '/', + array( + 'recursive' => true, + ) + ); + } catch ( FilesystemException $exception ) { + // Do not fail or mask Blueprint execution because temporary cleanup failed. + } } }