Skip to content
Snippets Groups Projects
Commit 069ac684 authored by Kelsey Bentham's avatar Kelsey Bentham Committed by Fran Garcia-Linares
Browse files

Issue #3503380 by kbentham: Migrate Logo nodes

parent 22fb55a8
No related branches found
No related tags found
1 merge request!18Add migrations for the logo nodes.
id: drupalorg_migrate_logo
label: 'Drupal.org Logo'
migration_group: drupalorg_migrate
# Commenting out the below will require the d7_file migration.
#migration_tags:
# - Drupal 7
# - Content
#deriver: Drupal\node\Plugin\migrate\D7NodeDeriver
source:
plugin: d7_node
batch_size: 1000
node_type: logo
destination:
plugin: entity:node
process:
nid: tnid
type:
plugin: default_value
default_value: logo
langcode:
plugin: default_value
source: language
default_value: "und"
title: title
uid:
plugin: migration_lookup
migration: drupalorg_migrate_users
source: node_uid
status: status
created: created
changed: changed
promote: promote
sticky: sticky
field_logo_type: field_logo_type
field_featured: field_featured
field_link:
plugin: field_link
uri_scheme: 'https://'
source: field_link
field_logo:
plugin: sub_process
source: field_logo
process:
target_id:
plugin: migration_lookup
migration: drupalorg_migrate_logo_logo_image_media
source: fid
migration_dependencies:
optional:
- drupalorg_migrate_users
- drupalorg_migrate_logo_logo_image_media
dependencies:
enforced:
module:
- drupalorg_migrate
langcode: en
status: true
id: drupalorg_migrate_logo_logo_image_files
#migration_tags:
# - 'Drupal 7'
# - Content
migration_group: drupalorg_migrate
label: 'Migrate Logo node Logo Image field Files'
source:
plugin: d7_file_logo_files
scheme: public
constants:
# Path changed via hook_migration_plugins_alter
# and set via $config['drupalorg_migrate']['project_files']['source']
source_base_path: '/var/www/html/web/files/d7-files'
remote_base_path: 'https://www.drupal.org'
destination:
plugin: entity:file
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
local_temp_path:
plugin: concat
delimiter: /
source:
- constants/source_base_path
- filepath
local_full_path:
-
plugin: callback
callable: file_exists
source: '@local_temp_path'
-
plugin: skip_on_empty
method: process
-
plugin: get
source: '@local_temp_path'
remote_full_path:
-
plugin: concat
delimiter: /
source:
- constants/remote_base_path
- filepath
-
plugin: urlencode
source_full_path:
-
plugin: null_coalesce
source:
- '@local_full_path'
- '@remote_full_path'
uri:
plugin: file_copy
source:
- '@source_full_path'
- uri
filemime: filemime
status: status
created: timestamp
changed: timestamp
uid:
plugin: migration_lookup
migration: drupalorg_migrate_users
source: uid
migration_dependencies:
optional:
- drupalorg_migrate_users
dependencies:
enforced:
module:
- drupalorg_migrate
langcode: en
status: true
id: drupalorg_migrate_logo_logo_image_media
#migration_tags:
# - 'Drupal 7'
# - Content
migration_group: drupalorg_migrate
label: 'Logo node Logo image files to media entities'
source:
plugin: d7_file_logo_files
scheme: public
constants:
# Path changed via hook_migration_plugins_alter
# and set via $config['drupalorg_migrate']['project_files']['source']
source_base_path: '/var/www/html/web/files/d7-files'
remote_base_path: 'https://www.drupal.org'
destination:
plugin: entity:media
default_bundle: image
process:
field_media_image/target_id:
- plugin: migration_lookup
migration: drupalorg_migrate_Logo_logo_image_files
source: fid
field_media_image/alt: alt
status: status
created: timestamp
changed: timestamp
uid:
plugin: migration_lookup
migration: drupalorg_migrate_users
source: uid
migration_dependencies:
optional:
- drupalorg_migrate_users
- drupalorg_migrate_logo_logo_image_files
dependencies:
enforced:
module:
- drupalorg_migrate
......@@ -94,6 +94,8 @@ if [[ "$TYPE" == "all" || "$TYPE" == "files" ]]; then
drush migrate:import drupalorg_migrate_contributor_task_upload_media_images --feedback 10000
drush migrate:import drupalorg_migrate_book_listing_cover_image_files --feedback 10000
drush migrate:import drupalorg_migrate_book_listing_cover_image_media --feedback 10000
drush migrate:import drupalorg_migrate_logo_logo_image_files --feedback 10000
drush migrate:import drupalorg_migrate_logo_logo_image_media --feedback 10000
fi
if [[ "$TYPE" == "all" || "$TYPE" == "project-browser" ]]; then
......@@ -124,6 +126,7 @@ if [[ "$TYPE" == "all" || "$TYPE" == "content" ]]; then
drush migrate:import drupalorg_migrate_contributor_task --feedback 10000
drush migrate:import drupalorg_migrate_security_advisory --feedback 10000
drush migrate:import drupalorg_migrate_book_listing --feedback 10000
drush migrate:import drupalorg_migrate_logo --feedback 10000
# Forums and comments.
drush migrate:import drupalorg_migrate_forum --feedback 10000
drush migrate:import drupalorg_migrate_forum_comment --feedback 10000
......
<?php
namespace Drupal\drupalorg_migrate\Plugin\migrate\source;
use Drupal\file\Plugin\migrate\source\d7\File;
/**
* Drupal 7 Logo images source from database.
*
* @MigrateSource(
* id = "d7_file_logo_files",
* source_module = "file"
* )
*/
class LogoFile extends File {
/**
* {@inheritdoc}
*/
public function query() {
$query = parent::query();
$query->addJoin('INNER', 'field_data_field_logo', 'fl', 'f.fid = %alias.field_logo_fid');
$query->condition('fl.entity_type', 'node');
$query->condition('fl.bundle', 'logo');
return $query;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment