Commit 9c38b992 authored by catch's avatar catch
Browse files

Issue #3022910 by quietone, juampynr, chandrashekhar_srijan, alisonjo315,...

Issue #3022910 by quietone, juampynr, chandrashekhar_srijan, alisonjo315, heddn, benjifisher: Prevent migrated files from having an incorrect value at file_managed.filename

(cherry picked from commit 286129f8)
parent c3a97f59
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -19,7 +19,14 @@ process:
  # If you are using this file to build a custom migration consider removing
  # the fid field to allow incremental migrations.
  fid: fid
  filename: filename
  # File entity module uses file_managed.filename as the entity title, while
  # Drupal 8 expects this to be an actual file name. Therefore, extract the
  # filename from the uri field. Otherwise, the file will migrate but form
  # validation won't pass when editing it.
  filename:
    plugin: callback
    callable: basename
    source: uri
  source_full_path:
    -
      plugin: concat
+8 −1
Original line number Diff line number Diff line
@@ -17,7 +17,14 @@ process:
  # If you are using this file to build a custom migration consider removing
  # the fid field to allow incremental migrations.
  fid: fid
  filename: filename
  # File entity module uses file_managed.filename as the entity title, while
  # Drupal 8 expects this to be an actual file name. Therefore, extract the
  # filename from the uri field. Otherwise, the file will migrate but form
  # validation won't pass when editing it.
  filename:
    plugin: callback
    callable: basename
    source: uri
  source_full_path:
    -
      plugin: concat
+8 −1
Original line number Diff line number Diff line
@@ -9,7 +9,14 @@ source:
    source_base_path: ''
process:
  fid: fid
  filename: filename
  # File entity module uses file_managed.filename as the entity title, while
  # Drupal 8 expects this to be an actual file name. Therefore, extract the
  # filename from the uri field. Otherwise, the file will migrate but form
  # validation won't pass when editing it.
  filename:
    plugin: callback
    callable: basename
    source: uri
  source_full_path:
    -
      plugin: concat
+4 −0
Original line number Diff line number Diff line
@@ -24,6 +24,10 @@ class MigrateFileTest extends MigrateDrupal7TestBase {
   */
  protected function setUp(): void {
    parent::setUp();
    $this->sourceDatabase->update('file_managed')
      ->fields(['filename' => 'this can have spaces in it'])
      ->condition('fid', 1)
      ->execute();
    $this->fileMigrationSetup();
  }

+4 −0
Original line number Diff line number Diff line
@@ -24,6 +24,10 @@ class MigratePrivateFileTest extends MigrateDrupal7TestBase {
   */
  protected function setUp(): void {
    parent::setUp();
    $this->sourceDatabase->update('file_managed')
      ->fields(['filename' => 'this can have spaces in it'])
      ->condition('fid', 3)
      ->execute();
    $this->setSetting('file_private_path', $this->container->getParameter('site.path') . '/private');
    $this->fileMigrationSetup();
  }