Update to Drupal 8.0.0 beta 14. For more information, see https://drupal.org/node/2544542

This commit is contained in:
Pantheon Automation 2015-08-27 12:03:05 -07:00 committed by Greg Anderson
parent 3b2511d96d
commit 81ccda77eb
2155 changed files with 54307 additions and 46870 deletions

View file

@ -1,17 +0,0 @@
id: d6_action_settings
label: Drupal 6 action configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- actions_max_stack
process:
recursion_limit: actions_max_stack
destination:
plugin: config
config_name: action.settings
dependencies:
module:
- action
- migrate_drupal

View file

@ -1,25 +0,0 @@
id: d6_aggregator_feed
label: Drupal 6 aggregator feeds
migration_tags:
- Drupal 6
source:
plugin: d6_aggregator_feed
process:
fid: fid
title: title
url: url
refresh: refresh
checked: checked
link: link
description: description
image: image
etag: etag
modified: modified
destination:
plugin: entity:aggregator_feed
dependencies:
module:
- aggregator
- migrate_drupal

View file

@ -1,30 +0,0 @@
id: d6_aggregator_item
label: Drupal 6 aggregator items
migration_tags:
- Drupal 6
source:
plugin: d6_aggregator_item
process:
iid: iid
fid:
plugin: migration
migration: d6_aggregator_feed
source:
- fid
title: title
link: link
author: author
description: description
timestamp: timestamp
guid: guid
destination:
plugin: entity:aggregator_item
migration_dependencies:
required:
- d6_aggregator_feed
dependencies:
config:
- migrate.migration.d6_aggregator_feed
module:
- aggregator
- migrate_drupal

View file

@ -1,29 +0,0 @@
id: d6_aggregator_settings
label: Drupal 6 aggregator configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- aggregator_fetcher
- aggregator_parser
- aggregator_processors
- aggregator_allowed_html_tags
- aggregator_teaser_length
- aggregator_clear
- aggregator_summary_items
process:
fetcher: aggregator_fetcher
parser: aggregator_parser
processors: aggregator_processors
'items/allowed_html': aggregator_allowed_html_tags
'items/teaser_length': aggregator_teaser_length
'items/expire': aggregator_clear
'source/list_max': aggregator_summary_items
destination:
plugin: config
config_name: aggregator.settings
dependencies:
module:
- aggregator
- migrate_drupal

View file

@ -1,102 +0,0 @@
id: d6_block
label: Drupal 6 blocks
migration_tags:
- Drupal 6
source:
plugin: d6_block
process:
# Drupal 8 does not have a status but it doesn't matter; this is here to
# skip disabled blocks.
status:
plugin: skip_on_empty
method: row
source: status
id:
# We need something unique, so aggregator, aggregator_1 etc will do.
plugin: dedupe_entity
entity_type: block
field: id
postfix: _
length: 32
source: module
plugin:
-
plugin: static_map
bypass: true
source:
- module
- delta
map:
book:
0: book_navigation
comment:
0: views_block:comments_recent-block_1
forum:
0: forum_active_block
1: forum_new_block
locale:
0: language_block
node:
0: node_syndicate_block
search:
0: search_form_block
statistics:
0: statistics_popular_block
system:
0: system_powered_by_block
user:
0: user_login_block
1: system_menu_block:tools
2: views_block:who_s_new-block_1
3: views_block:who_s_online-who_s_online_block
-
plugin: d6_block_plugin_id
theme:
plugin: d6_block_theme
source:
- theme
- default_theme
- admin_theme
region:
plugin: d6_block_region
source:
- region
- theme
- @theme
region_map:
left: sidebar_first
right: sidebar_second
sidebar_first: sidebar_first
sidebar_second: sidebar_second
help: help
header: header
footer: footer
label: title
weight: weight
settings:
plugin: d6_block_settings
source:
- @plugin
- delta
- settings
visibility:
plugin: d6_block_visibility
source:
- pages
- roles
- visibility
destination:
plugin: entity:block
migration_dependencies:
required:
- d6_menu
- d6_custom_block
- d6_user_role
dependencies:
config:
- migrate.migration.d6_custom_block
- migrate.migration.d6_menu
- migrate.migration.d6_user_role
module:
- block
- migrate_drupal

View file

@ -1,32 +0,0 @@
id: d6_block_content_body_field
label: Drupal 6 block content body field configuration
migration_tags:
- Drupal 6
source:
# We do an empty source and a proper destination to have an idmap for
# migration_dependencies.
plugin: md_empty
constants:
entity_type: block_content
bundle: basic
name: body
label: Body
display_summary: false
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
field_name: 'constants/name'
label: 'constants/label'
'settings/display_summary': 'constants/display_summary'
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_block_content_type
dependencies:
config:
- migrate.migration.d6_block_content_type
module:
- block_content
- field
- migrate_drupal

View file

@ -1,20 +0,0 @@
id: d6_block_content_type
label: Drupal 6 block content type
migration_tags:
- Drupal 6
source:
# We do an empty source and a proper destination to have an idmap for
# migration_dependencies.
plugin: md_empty
constants:
id: basic
label: Basic
process:
id: 'constants/id'
label: 'constants/label'
destination:
plugin: entity:block_content_type
dependencies:
module:
- block_content
- migrate_drupal

View file

@ -1,30 +0,0 @@
id: d6_book
label: Drupal 6 books
migration_tags:
- Drupal 6
source:
plugin: d6_book
process:
nid: nid
'book/bid': bid
'book/weight': weight
'book/pid':
-
plugin: skip_on_empty
method: process
source: plid
-
plugin: migration
migration: d6_book
destination:
plugin: book
migration_dependencies:
required:
- d6_node
dependencies:
config:
- migrate.migration.d6_node
module:
- book
- migrate_drupal
- node

View file

@ -1,21 +0,0 @@
id: d6_book_settings
label: Drupal 6 book configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- book_child_type
- book_block_mode
- book_allowed_types
process:
child_type: book_child_type
'block/navigation/mode': book_block_mode
allowed_types: book_allowed_types
destination:
plugin: config
config_name: book.settings
dependencies:
module:
- book
- migrate_drupal

View file

@ -1,26 +0,0 @@
id: d6_contact_category
label: Drupal 6 contact category configuration
migration_tags:
- Drupal 6
source:
plugin: d6_contact_category
process:
id:
-
plugin: machine_name
source: category
-
plugin: dedupe_entity
entity_type: user_role
field: cid
length: 32
label: category
recipients: recipients
reply: reply
weight: weight
destination:
plugin: entity:contact_form
dependencies:
module:
- contact
- migrate_drupal

View file

@ -1,28 +0,0 @@
id: d6_contact_settings
label: Drupal 6 contact configuration
migration_tags:
- Drupal 6
source:
plugin: d6_contact_settings
variables:
- contact_default_status
- contact_hourly_threshold
process:
user_default_enabled: contact_default_status
'flood/limit': contact_hourly_threshold
default_form:
plugin: migration
migration: d6_contact_category
source: default_category
destination:
plugin: config
config_name: contact.settings
migration_dependencies:
required:
- d6_contact_category
dependencies:
config:
- migrate.migration.d6_contact_category
module:
- contact
- migrate_drupal

View file

@ -1,31 +0,0 @@
id: d6_custom_block
label: Drupal 6 custom blocks
migration_tags:
- Drupal 6
source:
plugin: d6_box
constants:
type: basic
process:
id: bid
type: 'constants/type'
info: info
'body/format':
plugin: migration
migration: d6_filter_format
source: format
'body/value': body
destination:
plugin: entity:block_content
no_stub: true
migration_dependencies:
required:
- d6_filter_format
- d6_block_content_body_field
dependencies:
config:
- migrate.migration.d6_block_content_body_field
- migrate.migration.d6_filter_format
module:
- block_content
- migrate_drupal

View file

@ -1,24 +0,0 @@
id: d6_date_formats
label: Drupal 6 date format configuration
migration_tags:
- Drupal 6
source:
plugin: variable_multirow
variables:
- date_format_long
- date_format_medium
- date_format_short
process:
id:
plugin: static_map
source: name
map:
date_format_long: long
date_format_short: short
date_format_medium: medium
pattern: value
destination:
plugin: entity:date_format
dependencies:
module:
- migrate_drupal

View file

@ -1,17 +0,0 @@
id: d6_dblog_settings
label: Drupal 6 database logging configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- dblog_row_limit
process:
row_limit: dblog_row_limit
destination:
plugin: config
config_name: dblog.settings
dependencies:
module:
- dblog
- migrate_drupal

View file

@ -1,49 +0,0 @@
id: d6_filter_format
label: Drupal 6 filter format configuration
migration_tags:
- Drupal 6
source:
plugin: d6_filter_format
process:
format:
-
plugin: machine_name
source: name
-
plugin: dedupe_entity
entity_type: filter_format
field: format
length: 32
name: name
cache: cache
filters:
plugin: iterator
source: filters
key: @id
process:
id:
plugin: static_map
default_value: filter_null
source:
- module
- delta
map:
filter:
- filter_html
- filter_autop
- filter_url
- filter_htmlcorrector
- filter_html_escape
php:
- php_code
settings: settings
status:
plugin: default_value
default_value: true
destination:
plugin: entity:filter_format
no_stub: true
dependencies:
module:
- filter
- migrate_drupal

View file

@ -1,35 +0,0 @@
id: d6_forum_settings
label: Drupal 6 forum configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- forum_hot_topic
- forum_per_page
- forum_order
- forum_block_num_0
- forum_block_num_1
- forum_nav_vocabulary
process:
'block/active/limit': forum_block_num_0
'block/new/limit': forum_block_num_1
'topics/hot_threshold': forum_hot_topic
'topics/page_limit': forum_per_page
'topics/order': forum_order
vocabulary:
plugin: migration
migration: d6_taxonomy_vocabulary
source: forum_nav_vocabulary
destination:
plugin: config
config_name: forum.settings
migration_dependencies:
required:
- d6_taxonomy_vocabulary
dependencies:
config:
- migrate.migration.d6_taxonomy_vocabulary
module:
- forum
- migrate_drupal

View file

@ -1,19 +0,0 @@
id: d6_locale_settings
label: Drupal 6 locale configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- locale_cache_strings
- locale_js_directory
process:
cache_strings: locale_cache_strings
'javascript/directory': locale_js_directory
destination:
plugin: config
config_name: locale.settings
dependencies:
module:
- locale
- migrate_drupal

View file

@ -1,16 +0,0 @@
id: d6_menu
label: Drupal 6 menus
migration_tags:
- Drupal 6
source:
plugin: d6_menu
process:
id: menu_name
label: title
description: description
destination:
plugin: entity:menu
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,53 +0,0 @@
id: d6_menu_links
label: Drupal 6 menu links
migration_tags:
- Drupal 6
source:
plugin: d6_menu_link
constants:
bundle: menu_link_content
process:
id: mlid
bundle: 'constants/bundle'
title: link_title
description:
plugin: extract
source:
- options
index:
- 0
- attributes
- title
menu_name:
plugin: migration
migration: d6_menu
source: menu_name
'link/uri':
plugin: internal_uri
source:
- link_path
'link/options': options
external: external
weight: weight
expanded: expanded
enabled: enabled
parent:
-
plugin: skip_on_empty
method: process
source: plid
-
plugin: migration
migration: d6_menu_links
changed: updated
destination:
plugin: entity:menu_link_content
migration_dependencies:
required:
- d6_menu
dependencies:
config:
- migrate.migration.d6_menu
module:
- menu_link_content
- migrate_drupal

View file

@ -1,21 +0,0 @@
id: d6_menu_settings
label: Drupal 6 menu configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- menu_primary_links_source
- menu_secondary_links_source
- menu_override_parent_selector
process:
main_links: menu_primary_links_source
secondary_links: menu_secondary_links_source
override_parent_selector: menu_override_parent_selector
destination:
plugin: config
config_name: menu_ui.settings
dependencies:
module:
- menu_ui
- migrate_drupal

View file

@ -1,64 +0,0 @@
id: d6_node
label: Drupal 6 nodes
migration_tags:
- Drupal 6
source:
plugin: d6_node
process:
nid: nid
vid: vid
type: type
langcode:
plugin: default_value
source: language
default_value: "und"
title: title
uid: node_uid
# Core migrations are designed for replacing the upgrade path and therefore
# all node and user ids are preserved. For that reason we do not need to look-up
# the user id for the node. If you're writing a custom migration, user ids will
# vary from the source site and a lookup as shown below will be required.
# plugin: migration
# migration: d6_user
# source: node_uid
status: status
created: created
changed: changed
promote: promote
sticky: sticky
'body/format':
plugin: migration
migration: d6_filter_format
source: format
'body/value': body
'body/summary': teaser
revision_uid: revision_uid
revision_log: log
revision_timestamp: timestamp
# unmapped d6 fields.
# tnid
# translate
# moderate
# comment
destination:
plugin: entity:node
migration_dependencies:
required:
- d6_user
- d6_node_type
- d6_node_settings
- d6_filter_format
optional:
- d6_field_instance_widget_settings
- d6_field_formatter_settings
dependencies:
config:
- migrate.migration.d6_filter_format
- migrate.migration.d6_node_settings
- migrate.migration.d6_node_type
- migrate.migration.d6_user
module:
- migrate_drupal
- node

View file

@ -1,48 +0,0 @@
id: d6_node_revision
label: Drupal 6 node revisions
migration_tags:
- Drupal 6
source:
plugin: d6_node_revision
process:
nid: nid
vid: vid
type: type
langcode:
plugin: default_value
source: language
default_value: "und"
title: title
uid: node_uid
status: status
created: created
changed: changed
promote: promote
sticky: sticky
'body/format':
plugin: migration
migration: d6_filter_format
source: format
'body/value': body
'body/summary': teaser
revision_uid: revision_uid
revision_log: log
revision_timestamp: timestamp
# unmapped d6 fields.
# tnid
# translate
# moderate
# comment
destination:
plugin: entity_revision:node
migration_dependencies:
required:
- d6_node
dependencies:
config:
- migrate.migration.d6_node
module:
- migrate_drupal
- node

View file

@ -1,25 +0,0 @@
id: d6_node_setting_promote
label: Drupal 6 node type 'promote' setting
migration_tags:
- Drupal 6
source:
plugin: d6_node_type
constants:
entity_type: node
field_name: promote
process:
entity_type: 'constants/entity_type'
bundle: type
field_name: 'constants/field_name'
'default_value/0/value': 'options/promote'
destination:
plugin: entity:base_field_override
migration_dependencies:
required:
- d6_node_type
dependencies:
config:
- migrate.migration.d6_node_type
module:
- migrate_drupal
- node

View file

@ -1,25 +0,0 @@
id: d6_node_setting_status
label: Drupal 6 node type 'status' setting
migration_tags:
- Drupal 6
source:
plugin: d6_node_type
constants:
entity_type: node
field_name: status
process:
entity_type: 'constants/entity_type'
bundle: type
field_name: 'constants/field_name'
'default_value/0/value': 'options/status'
destination:
plugin: entity:base_field_override
migration_dependencies:
required:
- d6_node_type
dependencies:
config:
- migrate.migration.d6_node_type
module:
- migrate_drupal
- node

View file

@ -1,25 +0,0 @@
id: d6_node_setting_sticky
label: Drupal 6 node type 'sticky' setting
migration_tags:
- Drupal 6
source:
plugin: d6_node_type
constants:
entity_type: node
field_name: sticky
process:
entity_type: 'constants/entity_type'
bundle: type
field_name: 'constants/field_name'
'default_value/0/value': 'options/sticky'
destination:
plugin: entity:base_field_override
migration_dependencies:
required:
- d6_node_type
dependencies:
config:
- migrate.migration.d6_node_type
module:
- migrate_drupal
- node

View file

@ -1,17 +0,0 @@
id: d6_node_settings
label: Drupal 6 node configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- node_admin_theme
process:
use_admin_theme: node_admin_theme
destination:
plugin: config
config_name: node.settings
dependencies:
module:
- migrate_drupal
- node

View file

@ -1,28 +0,0 @@
id: d6_node_type
label: Drupal 6 node type configuration
migration_tags:
- Drupal 6
source:
plugin: d6_node_type
constants:
preview: 1 # DRUPAL_OPTIONAL
create_body: false
process:
type: type
name: name
module: module
description: description
help: help
title_label: title_label
'preview_mode': 'constants/preview'
'display_submitted': display_submitted
'new_revision': 'options/revision'
'settings/node/options': options
create_body: has_body
create_body_label: body_label
destination:
plugin: entity:node_type
dependencies:
module:
- migrate_drupal
- node

View file

@ -1,29 +0,0 @@
id: d6_search_page
label: Drupal 6 search page configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- node_rank_comments
- node_rank_promote
- node_rank_recent
- node_rank_relevance
- node_rank_sticky
- node_rank_views
constants:
id: node_search
path: node
plugin: node_search
process:
id: 'constants/id'
path: 'constants/path'
plugin: 'constants/plugin'
'configuration/rankings':
plugin: d6_search_configuration_rankings
destination:
plugin: entity:search_page
dependencies:
module:
- migrate_drupal
- search

View file

@ -1,26 +0,0 @@
id: d6_search_settings
label: Drupal 6 search configuration
migration_tags:
- Drupal 6
source:
plugin: variable
constants:
status: true
variables:
- minimum_word_size
- overlap_cjk
- search_cron_limit
- search_tag_weights
- search_and_or_limit
process:
'index/minimum_word_size': minimum_word_size
'index/overlap_cjk': overlap_cjk
'index/cron_limit': search_cron_limit
logging: 'constants/status'
destination:
plugin: config
config_name: search.settings
dependencies:
module:
- migrate_drupal
- search

View file

@ -1,25 +0,0 @@
id: d6_simpletest_settings
label: Drupal 6 simpletest configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- simpletest_clear_results
- simpletest_httpauth_method
- simpletest_httpauth_password
- simpletest_httpauth_username
- simpletest_verbose
process:
clear_results: simpletest_clear_results
'httpauth/method': simpletest_httpauth_method
'httpauth/password': simpletest_httpauth_password
'httpauth/username': simpletest_httpauth_username
verbose: simpletest_verbose
destination:
plugin: config
config_name: simpletest.settings
dependencies:
module:
- migrate_drupal
- simpletest

View file

@ -1,21 +0,0 @@
id: d6_statistics_settings
label: Drupal 6 statistics configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- statistics_enable_access_log
- statistics_flush_accesslog_timer
- statistics_count_content_views
process:
'access_log/enabled': statistics_enable_access_log
'access_log/max_lifetime': statistics_flush_accesslog_timer
'count_content_views': statistics_count_content_views
destination:
plugin: config
config_name: statistics.settings
dependencies:
module:
- migrate_drupal
- statistics

View file

@ -1,19 +0,0 @@
id: d6_syslog_settings
label: Drupal 6 system log configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- syslog_identity
- syslog_facility
process:
identity: syslog_identity
facility: syslog_facility
destination:
plugin: config
config_name: syslog.settings
dependencies:
module:
- migrate_drupal
- syslog

View file

@ -1,20 +0,0 @@
id: d6_system_cron
label: Drupal 6 cron settings
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- cron_threshold_warning
- cron_threshold_error
- cron_last
process:
'threshold/requirements_warning': cron_threshold_warning
'threshold/requirements_error': cron_threshold_error
destination:
plugin: config
config_name: system.cron
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,24 +0,0 @@
id: d6_system_file
label: Drupal 6 file system configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- file_directory_temp
- allow_insecure_uploads
process:
'path/temporary': file_directory_temp
allow_insecure_uploads:
plugin: static_map
source: allow_insecure_uploads
map:
0: FALSE
1: TRUE
destination:
plugin: config
config_name: system.file
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,17 +0,0 @@
id: d6_system_filter
label: Drupal 6 filter configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- filter_allowed_protocols
process:
protocols: filter_allowed_protocols
destination:
plugin: config
config_name: system.filter
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,17 +0,0 @@
id: d6_system_image
label: Drupal 6 image toolkit configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- image_toolkit
process:
toolkit: image_toolkit
destination:
plugin: config
config_name: system.image
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,17 +0,0 @@
id: d6_system_image_gd
label: Drupal 6 image quality configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- image_jpeg_quality
process:
jpeg_quality: image_jpeg_quality
destination:
plugin: config
config_name: system.image.gd
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,25 +0,0 @@
id: d6_system_logging
label: Drupal 6 system logging
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- error_level
process:
error_level:
plugin: static_map
source: error_level
default_value: all
map:
0: hide
1: some
2: all
3: verbose
destination:
plugin: config
config_name: system.logging
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,17 +0,0 @@
id: d6_system_maintenance
label: Drupal 6 maintenance page configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- site_offline_message
process:
message: site_offline_message
destination:
plugin: config
config_name: system.maintenance
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,24 +0,0 @@
id: d6_system_performance
label: Drupal 6 performance configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- preprocess_css
- preprocess_js
- cache_lifetime
- cache
- page_compression
process:
'css/preprocess': preprocess_css
'js/preprocess': preprocess_js
'cache/page/max_age': cache_lifetime
'response/gzip': page_compression
destination:
plugin: config
config_name: system.performance
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,19 +0,0 @@
id: d6_system_rss
label: Drupal 6 RSS configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- feed_default_items
- feed_item_length
process:
'items/limit': feed_default_items
'items/view_mode': feed_item_length
destination:
plugin: config
config_name: system.rss
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,45 +0,0 @@
id: d6_system_site
label: Drupal 6 site configuration
migration_tags:
- Drupal 6
source:
plugin: variable
constants:
slash: '/'
variables:
- site_name
- site_mail
- site_slogan
- site_frontpage
- site_403
- site_404
- drupal_weight_select_max
- admin_compact_mode
process:
name: site_name
mail: site_mail
slogan: site_slogan
'page/front':
plugin: concat
source:
- constants/slash
- site_frontpage
'page/403':
plugin: concat
source:
- constants/slash
- site_403
'page/404':
plugin: concat
source:
- constants/slash
- site_404
weight_select_max: drupal_weight_select_max
admin_compact_mode: admin_compact_mode
destination:
plugin: config
config_name: system.site
dependencies:
module:
- migrate_drupal
- system

View file

@ -1,19 +0,0 @@
id: d6_taxonomy_settings
label: Drupal 6 taxonomy configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- taxonomy_override_selector
- taxonomy_terms_per_page_admin
process:
override_selector: taxonomy_override_selector
terms_per_page_admin: taxonomy_terms_per_page_admin
destination:
plugin: config
config_name: taxonomy.settings
dependencies:
module:
- migrate_drupal
- taxonomy

View file

@ -1,35 +0,0 @@
id: d6_taxonomy_term
label: Drupal 6 taxonomy terms
migration_tags:
- Drupal 6
source:
plugin: d6_taxonomy_term
process:
tid: tid
vid:
plugin: migration
migration: d6_taxonomy_vocabulary
source: vid
name: name
description: description
weight: weight
parent:
-
plugin: skip_on_empty
method: process
source: parent
-
plugin: migration
migration: d6_taxonomy_term
changed: timestamp
destination:
plugin: entity:taxonomy_term
migration_dependencies:
required:
- d6_taxonomy_vocabulary
dependencies:
config:
- migrate.migration.d6_taxonomy_vocabulary
module:
- migrate_drupal
- taxonomy

View file

@ -1,27 +0,0 @@
id: d6_taxonomy_vocabulary
label: Drupal 6 taxonomy vocabularies
migration_tags:
- Drupal 6
source:
plugin: d6_taxonomy_vocabulary
process:
vid:
-
plugin: machine_name
source: name
-
plugin: dedupe_entity
entity_type: taxonomy_vocabulary
field: vid
length: 32
label: name
name: name
description: description
hierarchy: hierarchy
weight: weight
destination:
plugin: entity:taxonomy_vocabulary
dependencies:
module:
- migrate_drupal
- taxonomy

View file

@ -1,30 +0,0 @@
id: d6_term_node
label: Drupal 6 term/node relationships
migration_tags:
- Drupal 6
load:
plugin: d6_term_node
source:
plugin: d6_term_node
process:
nid: nid
type: type
# The actual field name is dynamic and will be added by the load plugin.
destination:
plugin: entity:node
migration_dependencies:
required:
- d6_vocabulary_entity_display
- d6_vocabulary_entity_form_display
- d6_node
dependencies:
config:
- migrate.migration.d6_node
- migrate.migration.d6_vocabulary_entity_display
- migrate.migration.d6_vocabulary_entity_form_display
module:
- migrate_drupal
- node

View file

@ -1,29 +0,0 @@
id: d6_term_node_revision
label: Drupal 6 term/node relationship revisions
migration_tags:
- Drupal 6
load:
plugin: d6_term_node
bundle_migration: d6_vocabulary_field
source:
plugin: d6_term_node_revision
process:
vid: vid
type: type
# The actual field name is dynamic and will be added by the load plugin.
destination:
plugin: entity_revision:node
migration_dependencies:
required:
- d6_term_node
- d6_node_revision
dependencies:
config:
- migrate.migration.d6_node_revision
- migrate.migration.d6_term_node
module:
- migrate_drupal
- node

View file

@ -1,17 +0,0 @@
id: d6_text_settings
label: Drupal 6 teaser length configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- teaser_length
process:
default_summary_length: teaser_length
destination:
plugin: config
config_name: text.settings
dependencies:
module:
- migrate_drupal
- text

View file

@ -1,25 +0,0 @@
id: d6_update_settings
label: Drupal 6 update configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- update_max_fetch_attempts
- update_fetch_url
- update_notification_threshold
- update_notify_emails
- update_check_frequency
process:
'fetch/max_attempts': update_max_fetch_attempts
'fetch/url': update_fetch_url
'notification/threshold': update_notification_threshold
'notification/emails': update_notify_emails
'check/interval_days': update_check_frequency
destination:
plugin: config
config_name: update.settings
dependencies:
module:
- migrate_drupal
- update

View file

@ -1,27 +0,0 @@
id: d6_url_alias
label: Drupal 6 URL aliases
migration_tags:
- Drupal 6
source:
plugin: d6_url_alias
constants:
slash: '/'
process:
source:
plugin: concat
source:
- constants/slash
- src
alias:
plugin: concat
source:
- constants/slash
- dst
langcode: language
destination:
plugin: url_alias
dependencies:
module:
- migrate_drupal

View file

@ -1,44 +0,0 @@
id: d6_view_modes
label: Drupal 6 view modes
migration_tags:
- Drupal 6
source:
plugin: d6_view_mode
constants:
targetEntityType: node
status: true
process:
mode:
plugin: static_map
source: view_mode
map:
0: normal
1: preview
2: search_index
3: search_result
4: rss
5: print
teaser: teaser
full: full
label:
plugin: static_map
source: view_mode
map:
0: "Normal"
1: "Preview"
2: "Search index"
3: "Search result"
4: "RSS"
5: "Print"
teaser: "Teaser"
full: "Full"
targetEntityType: 'constants/targetEntityType'
status: 'constants/status'
destination:
plugin: entity:entity_view_mode
dependencies:
module:
- migrate_drupal
- node

View file

@ -1,34 +0,0 @@
id: d6_vocabulary_entity_display
label: Drupal 6 vocabulary display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_taxonomy_vocabulary_per_type
constants:
entity_type: node
view_mode: default
options:
label: hidden
type: entity_reference_label
weight: 20
process:
entity_type: 'constants/entity_type'
view_mode: 'constants/view_mode'
options: 'constants/options'
bundle: type
field_name:
plugin: migration
migration: d6_taxonomy_vocabulary
source: vid
destination:
plugin: component_entity_display
migration_dependencies:
required:
- d6_vocabulary_field_instance
dependencies:
config:
- migrate.migration.d6_vocabulary_field_instance
module:
- migrate_drupal
- node

View file

@ -1,32 +0,0 @@
id: d6_vocabulary_entity_form_display
label: Drupal 6 vocabulary form display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_taxonomy_vocabulary_per_type
constants:
entity_type: node
form_mode: default
options:
type: options_select
weight: 20
process:
entity_type: 'constants/entity_type'
form_mode: 'constants/form_mode'
options: 'constants/options'
bundle: type
field_name:
plugin: migration
migration: d6_taxonomy_vocabulary
source: vid
destination:
plugin: component_entity_form_display
migration_dependencies:
required:
- d6_vocabulary_field_instance
dependencies:
config:
- migrate.migration.d6_vocabulary_field_instance
module:
- migrate_drupal
- node

View file

@ -1,33 +0,0 @@
id: d6_vocabulary_field
label: Drupal 6 vocabulary field configuration
migration_tags:
- Drupal 6
source:
plugin: d6_taxonomy_vocabulary
constants:
entity_type: node
type: entity_reference
target_entity_type: taxonomy_term
cardinality: -1
process:
entity_type: 'constants/entity_type'
type: 'constants/type'
field_name:
plugin: migration
migration: d6_taxonomy_vocabulary
source: vid
'settings/target_type': 'constants/target_entity_type'
cardinality: 'constants/cardinality'
destination:
plugin: md_entity:field_storage_config
migration_dependencies:
required:
- d6_taxonomy_vocabulary
dependencies:
config:
- migrate.migration.d6_taxonomy_vocabulary
module:
- entity_reference
- field
- migrate_drupal
- node

View file

@ -1,32 +0,0 @@
id: d6_vocabulary_field_instance
label: Drupal 6 vocabulary field instance configuration
migration_tags:
- Drupal 6
source:
plugin: d6_taxonomy_vocabulary_per_type
constants:
entity_type: node
auto_create: true
selection_handler: 'default:taxonomy_term'
process:
entity_type: 'constants/entity_type'
bundle: type
field_name:
plugin: migration
migration: d6_taxonomy_vocabulary
source: vid
'settings/handler': 'constants/selection_handler'
'settings/handler_settings/target_bundles/0': @field_name
'settings/handler_settings/auto_create': 'constants/auto_create'
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_vocabulary_field
dependencies:
config:
- migrate.migration.d6_vocabulary_field
module:
- field
- migrate_drupal
- node

View file

@ -67,34 +67,6 @@ migrate.source.d6_comment_entity_form_display_subject:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_menu_link:
type: migrate_source_sql
label: 'Drupal 6 menu link'
mapping:
constants:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_box:
type: migrate_source_sql
label: 'Drupal 6 box'
mapping:
constants:
type: mapping
label: 'Constants'
mapping:
type:
type: string
label: 'Type'
migrate.source.d6_taxonomy_vocabulary:
type: migrate_source_sql
label: 'Drupal 6 field instance form display'
mapping:
constants:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_field_instance_per_form_display:
type: migrate_source_sql
label: 'Drupal 6 field instance form display'
@ -103,22 +75,6 @@ migrate.source.d6_field_instance_per_form_display:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_taxonomy_vocabulary_per_type:
type: migrate_source_sql
label: 'Drupal 6 field instance form display'
mapping:
constants:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_taxonomy_vocabulary_per_type:
type: migrate_source_sql
label: 'Drupal 6 field instance form display'
mapping:
constants:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_field:
type: migrate_source_sql
label: 'Drupal 6 field'
@ -146,32 +102,6 @@ migrate.source.d6_comment_variable:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_contact_settings:
type: migrate_source_sql
label: 'Drupal 6 contact settings'
mapping:
variables:
type: sequence
label: 'Variables'
sequence:
type: string
label: 'Variable'
migrate.source.d6_view_mode:
type: migrate_source_sql
label: 'Drupal 6 view mode'
mapping:
constants:
type: mapping
label: 'Constants'
mapping:
targetEntityType:
type: string
label: 'Target entity type'
status:
type: boolean
label: 'Status'
migrate.source.d6_profile_field:
type: migrate_source_sql
label: 'Drupal 6 profile field'
@ -188,34 +118,6 @@ migrate.source.d6_field_formatter_settings:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_node_type:
type: migrate_source_sql
label: 'Drupal 6 node type'
mapping:
constants:
type: migrate_entity_constant
label: 'Constants'
migrate.source.d6_node:
type: migrate_source_sql
label: 'Drupal 6 node'
mapping:
node_type:
# The node type can be specified both as a string ID of a node type or an
# array of node type IDs, so there is no way to consistently parse this.
type: ignore
label: 'Node type'
migrate.source.d6_node_revision:
type: migrate_source_sql
label: 'Drupal 6 node'
mapping:
node_type:
# The node type can be specified both as a string ID of a node type or an
# array of node type IDs, so there is no way to consistently parse this.
type: ignore
label: 'Node type'
migrate.source.d6_upload_instance:
type: migrate_source_sql
label: 'Drupal 6 upload form display'

View file

@ -1,7 +1,7 @@
services:
plugin.manager.migrate.load:
class: Drupal\migrate_drupal\Plugin\MigratePluginManager
class: Drupal\migrate\Plugin\MigratePluginManager
arguments: [load, '@container.namespaces', '@cache.discovery', '@module_handler']
plugin.manager.migrate.cckfield:
class: Drupal\migrate_drupal\Plugin\MigratePluginManager
class: Drupal\migrate\Plugin\MigratePluginManager
arguments: [cckfield, '@container.namespaces', '@cache.discovery', '@module_handler']

View file

@ -15,10 +15,3 @@ migration_dependencies:
required:
- d6_cck_field_values
- d6_node_revision
dependencies:
config:
- migrate.migration.d6_cck_field_values
- migrate.migration.d6_node_revision
module:
- migrate_drupal
- node

View file

@ -19,11 +19,3 @@ migration_dependencies:
- d6_node
- d6_field_formatter_settings
- d6_field_instance_widget_settings
dependencies:
config:
- migrate.migration.d6_field_formatter_settings
- migrate.migration.d6_field_instance_widget_settings
- migrate.migration.d6_node
module:
- migrate_drupal
- node

View file

@ -43,15 +43,3 @@ migration_dependencies:
- d6_comment_entity_display
- d6_comment_entity_form_display
- d6_filter_format
dependencies:
config:
- migrate.migration.d6_comment_entity_display
- migrate.migration.d6_comment_entity_form_display
- migrate.migration.d6_comment_type
- migrate.migration.d6_filter_format
- migrate.migration.d6_node
- migrate.migration.d6_user
module:
- comment
- migrate_drupal
- node

View file

@ -24,9 +24,3 @@ destination:
migration_dependencies:
required:
- d6_comment_field_instance
dependencies:
config:
- migrate.migration.d6_comment_field_instance
module:
- migrate_drupal
- node

View file

@ -23,9 +23,3 @@ destination:
migration_dependencies:
required:
- d6_comment_field_instance
dependencies:
config:
- migrate.migration.d6_comment_field_instance
module:
- migrate_drupal
- node

View file

@ -30,9 +30,3 @@ destination:
migration_dependencies:
required:
- d6_comment_type
dependencies:
config:
- migrate.migration.d6_comment_type
module:
- comment
- migrate_drupal

View file

@ -17,11 +17,3 @@ destination:
migration_dependencies:
required:
- d6_comment_type
dependencies:
config:
- migrate.migration.d6_comment_type
module:
- comment
- field
- migrate_drupal
- node

View file

@ -32,11 +32,3 @@ migration_dependencies:
required:
- d6_comment_field
- d6_node_type
dependencies:
config:
- migrate.migration.d6_comment_field
- migrate.migration.d6_node_type
module:
- field
- migrate_drupal
- node

View file

@ -13,8 +13,3 @@ process:
description: description
destination:
plugin: entity:comment_type
dependencies:
module:
- comment
- migrate_drupal
- node

View file

@ -131,8 +131,3 @@ process:
destination:
plugin: md_entity:field_storage_config
dependencies:
module:
- field
- migrate_drupal
- node

View file

@ -52,10 +52,6 @@ process:
- type
- 'display_settings/format'
map:
text:
default: text_default
trimmed: text_trimmed
plain: basic_string
number_integer:
default: number_integer
us_0: number_integer
@ -91,13 +87,6 @@ process:
spamspan: email_mailto
contact: email_mailto
plain: basic_string
filefield:
default: file_default
url_plain: file_url_plain
path_plain: file_url_plain
image_plain: image
image_nodelink: image
image_imagelink: image
fr_phone:
default: basic_string
be_phone:
@ -261,10 +250,3 @@ migration_dependencies:
required:
- d6_field_instance
- d6_view_modes
dependencies:
config:
- migrate.migration.d6_field_instance
- migrate.migration.d6_view_modes
module:
- migrate_drupal
- node

View file

@ -50,11 +50,3 @@ migration_dependencies:
required:
- d6_node_type
- d6_field
dependencies:
config:
- migrate.migration.d6_field
- migrate.migration.d6_node_type
module:
- field
- migrate_drupal
- node

View file

@ -36,12 +36,10 @@ process:
bypass: true
source: widget_type
map:
text_textfield: text_textfield
number: number
email_textfield: email_default
date_select: datetime_default
date_text: datetime_default
filefield_widget: file_generic
imagefield_widget: image_image
phone_textfield: telephone_default
optionwidgets_onoff: boolean_checkbox
@ -60,9 +58,3 @@ destination:
migration_dependencies:
required:
- d6_field_instance
dependencies:
config:
- migrate.migration.d6_field_instance
module:
- migrate_drupal
- node

View file

@ -23,7 +23,3 @@ process:
uid: uid
destination:
plugin: entity:file
dependencies:
module:
- file
- migrate_drupal

View file

@ -15,7 +15,3 @@ process:
destination:
plugin: config
config_name: file.settings
dependencies:
module:
- file
- migrate_drupal

View file

@ -16,12 +16,3 @@ migration_dependencies:
- d6_user_profile_field_instance
- d6_user_profile_entity_display
- d6_user_profile_entity_form_display
dependencies:
config:
- migrate.migration.d6_user
- migrate.migration.d6_user_profile_entity_display
- migrate.migration.d6_user_profile_entity_form_display
- migrate.migration.d6_user_profile_field_instance
module:
- migrate_drupal
- user

View file

@ -25,10 +25,3 @@ migration_dependencies:
required:
- d6_file
- d6_node
dependencies:
config:
- migrate.migration.d6_file
- migrate.migration.d6_node
module:
- migrate_drupal
- node

View file

@ -25,9 +25,3 @@ destination:
migration_dependencies:
required:
- d6_upload_field_instance
dependencies:
config:
- migrate.migration.d6_upload_field_instance
module:
- migrate_drupal
- node

View file

@ -26,9 +26,3 @@ destination:
migration_dependencies:
required:
- d6_upload_field_instance
dependencies:
config:
- migrate.migration.d6_upload_field_instance
module:
- migrate_drupal
- node

View file

@ -21,9 +21,3 @@ process:
'settings/display_field': 'constants/display_field'
destination:
plugin: md_entity:field_storage_config
dependencies:
module:
- field
- file
- migrate_drupal
- node

View file

@ -22,11 +22,3 @@ migration_dependencies:
required:
- d6_upload_field
- d6_node_type
dependencies:
config:
- migrate.migration.d6_node_type
- migrate.migration.d6_upload_field
module:
- field
- migrate_drupal
- node

View file

@ -35,9 +35,3 @@ migration_dependencies:
- d6_user_picture_file
- d6_user_picture_entity_display
- d6_user_picture_entity_form_display
dependencies:
config:
- migrate.migration.d6_user_role
module:
- migrate_drupal
- user

View file

@ -21,9 +21,3 @@ destination:
migration_dependencies:
required:
- d6_user
dependencies:
config:
- migrate.migration.d6_user
module:
- contact
- migrate_drupal

View file

@ -37,7 +37,3 @@ process:
destination:
plugin: config
config_name: user.mail
dependencies:
module:
- migrate_drupal
- user

View file

@ -28,9 +28,3 @@ destination:
migration_dependencies:
required:
- d6_user_picture_field_instance
dependencies:
config:
- migrate.migration.d6_user_picture_field_instance
module:
- migrate_drupal
- user

View file

@ -27,9 +27,3 @@ destination:
migration_dependencies:
required:
- d6_user_picture_field_instance
dependencies:
config:
- migrate.migration.d6_user_picture_field_instance
module:
- migrate_drupal
- user

View file

@ -18,9 +18,3 @@ process:
cardinality: 'constants/cardinality'
destination:
plugin: md_entity:field_storage_config
dependencies:
module:
- field
- image
- migrate_drupal
- user

View file

@ -28,10 +28,3 @@ destination:
migration_dependencies:
required:
- d6_user_picture_field
dependencies:
config:
- migrate.migration.d6_user_picture_field
module:
- field
- migrate_drupal
- user

View file

@ -24,7 +24,3 @@ migration_dependencies:
# migration as an optional dependency to ensure it runs first.
optional:
- d6_file
dependencies:
module:
- file
- migrate_drupal

View file

@ -38,7 +38,3 @@ process:
4: true # PROFILE_HIDDEN
destination:
plugin: component_entity_display
dependencies:
module:
- migrate_drupal
- user

View file

@ -47,7 +47,3 @@ process:
4: true # PROFILE_HIDDEN
destination:
plugin: component_entity_form_display
dependencies:
module:
- migrate_drupal
- user

View file

@ -32,8 +32,3 @@ process:
list: -1
destination:
plugin: md_entity:field_storage_config
dependencies:
module:
- field
- migrate_drupal
- user

View file

@ -19,10 +19,3 @@ destination:
migration_dependencies:
required:
- d6_user_profile_field
dependencies:
config:
- migrate.migration.d6_user_profile_field
module:
- field
- migrate_drupal
- user

View file

@ -44,9 +44,3 @@ destination:
migration_dependencies:
required:
- d6_filter_format
dependencies:
config:
- migrate.migration.d6_filter_format
module:
- migrate_drupal
- user

View file

@ -26,7 +26,3 @@ process:
destination:
plugin: config
config_name: user.settings
dependencies:
module:
- migrate_drupal
- user

View file

@ -16,7 +16,7 @@ class Migration extends BaseMigration implements MigrationInterface {
*
* @var array
*/
public $load = array();
protected $load = array();
/**
* The load plugin.

View file

@ -7,7 +7,6 @@
namespace Drupal\migrate_drupal;
use Drupal\Component\Utility\SafeMarkup;
use Drupal\Component\Uuid\UuidInterface;
use Drupal\Core\Config\ConfigFactoryInterface;
use Drupal\Core\Entity\EntityInterface;
@ -17,7 +16,7 @@ use Drupal\Core\Language\LanguageManagerInterface;
use Drupal\migrate\Plugin\migrate\source\SourcePluginBase;
use Drupal\migrate_drupal\Plugin\CckFieldMigrateSourceInterface;
use Drupal\migrate\MigrationStorage as BaseMigrationStorage;
use Drupal\migrate_drupal\Plugin\MigratePluginManager;
use Drupal\migrate\Plugin\MigratePluginManager;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
@ -164,7 +163,7 @@ class MigrationStorage extends BaseMigrationStorage {
*/
public function save(EntityInterface $entity) {
if (strpos($entity->id(), ':') !== FALSE) {
throw new EntityStorageException(SafeMarkup::format("Dynamic migration %id can't be saved", array('$%id' => $entity->id())));
throw new EntityStorageException("Dynamic migration '{$entity->id()}' can't be saved");
}
return parent::save($entity);
}

View file

@ -1,31 +0,0 @@
<?php
/**
* @file
* Contains \Drupal\migrate_drupal\Plugin\MigratePluginManager.
*/
namespace Drupal\migrate_drupal\Plugin;
use Drupal\migrate\Plugin\MigratePluginManager as BaseMigratePluginManager;
/**
* Manages migrate_drupal plugins.
*
* @see plugin_api
*
* @ingroup migration
*/
class MigratePluginManager extends BaseMigratePluginManager {
/**
* {@inheritdoc}
*/
protected function getPluginInterfaceMap() {
return parent::getPluginInterfaceMap() + [
'load' => 'Drupal\migrate_drupal\Plugin\MigrateLoadInterface',
'cckfield' => 'Drupal\migrate_drupal\Plugin\MigrateCckFieldInterface',
];
}
}

View file

@ -0,0 +1,55 @@
<?php
/**
* @file
* Contains \Drupal\migrate_drupal\Plugin\migrate\cckfield\FileField.
*/
namespace Drupal\migrate_drupal\Plugin\migrate\cckfield;
use Drupal\migrate\Entity\MigrationInterface;
/**
* @PluginID("filefield")
*/
class FileField extends CckFieldPluginBase {
/**
* {@inheritdoc}
*/
public function getFieldWidgetMap() {
return [
'filefield_widget' => 'file_generic',
];
}
/**
* {@inheritdoc}
*/
public function getFieldFormatterMap() {
return [
'default' => 'file_default',
'url_plain' => 'file_url_plain',
'path_plain' => 'file_url_plain',
'image_plain' => 'image',
'image_nodelink' => 'image',
'image_imagelink' => 'image',
];
}
/**
* {@inheritdoc}
*/
public function processCckFieldValues(MigrationInterface $migration, $field_name, $data) {
$process = [
'plugin' => 'd6_cck_file',
'source' => [
$field_name,
$field_name . '_list',
$field_name . '_data',
],
];
$migration->mergeProcessOfProperty($field_name, $process);
}
}

View file

@ -0,0 +1,71 @@
<?php
/**
* @file
* Contains \Drupal\migrate_drupal\Plugin\migrate\cckfield\TextField.
*/
namespace Drupal\migrate_drupal\Plugin\migrate\cckfield;
use Drupal\migrate\Entity\MigrationInterface;
/**
* @PluginID("text")
*/
class TextField extends CckFieldPluginBase {
/**
* {@inheritdoc}
*/
public function getFieldWidgetMap() {
return [
'text_textfield' => 'text_textfield',
];
}
/**
* {@inheritdoc}
*/
public function getFieldFormatterMap() {
return [
'default' => 'text_default',
'trimmed' => 'text_trimmed',
'plain' => 'basic_string',
];
}
/**
* {@inheritdoc}
*/
public function processCckFieldValues(MigrationInterface $migration, $field_name, $data) {
// The data is stored differently depending on whether we're using
// db storage.
$value_key = $data['db_storage'] ? $field_name : "$field_name/value";
$format_key = $data['db_storage'] ? $field_name . '_format' : "$field_name/format" ;
$migration->setProcessOfProperty("$field_name/value", $value_key);
// See \Drupal\migrate_drupal\Plugin\migrate\source\d6\User::baseFields(),
// signature_format for an example of the YAML that represents this
// process array.
$process = [
[
'plugin' => 'static_map',
'bypass' => TRUE,
'source' => $format_key,
'map' => [0 => NULL]
],
[
'plugin' => 'skip_on_empty',
'method' => 'process',
],
[
'plugin' => 'migration',
'migration' => 'd6_filter_format',
'source' => $format_key,
],
];
$migration->mergeProcessOfProperty("$field_name/format", $process);
}
}

View file

@ -7,7 +7,6 @@
namespace Drupal\migrate_drupal\Plugin\migrate\load;
use Drupal\Component\Utility\SafeMarkup;
use Drupal\Core\Entity\EntityStorageInterface;
use Drupal\Core\Plugin\PluginBase;
use Drupal\migrate\Entity\MigrationInterface;
@ -44,7 +43,7 @@ class LoadEntity extends PluginBase implements MigrateLoadInterface {
throw new MigrateException('Migrations with a load plugin using LoadEntity should have an entity as source.');
}
if ($source_plugin->bundleMigrationRequired() && empty($configuration['bundle_migration'])) {
throw new MigrateException(SafeMarkup::format('Source plugin @plugin requires the bundle_migration key to be set.', array('@plugin' => $source_plugin->getPluginId())));
throw new MigrateException("Source plugin '{$source_plugin->getPluginId()}' requires the bundle_migration key to be set.");
}
}
@ -87,16 +86,7 @@ class LoadEntity extends PluginBase implements MigrateLoadInterface {
if ($source_plugin instanceof CckFieldMigrateSourceInterface) {
foreach ($source_plugin->fieldData() as $field_name => $data) {
switch ($data['type']) {
case 'filefield':
$this->processFileField($field_name, $data, $migration);
break;
case 'text':
$this->processTextField($field_name, $data, $migration);
break;
default:
$migration->setProcessOfProperty($field_name, $field_name);
}
$migration->setProcessOfProperty($field_name, $field_name);
}
}
else {
@ -113,67 +103,4 @@ class LoadEntity extends PluginBase implements MigrateLoadInterface {
return $migrations;
}
/**
* Manipulate text fields with any per field type processing.
*
* @param string $field_name
* The field we're processing.
* @param array $field_data
* The an array of field type data from the source.
* @param \Drupal\migrate\Entity\MigrationInterface $migration
* The migration entity.
*/
protected function processTextField($field_name, $field_data, MigrationInterface $migration) {
// The data is stored differently depending on whether we're using
// db storage.
$value_key = $field_data['db_storage'] ? $field_name : "$field_name/value";
$format_key = $field_data['db_storage'] ? $field_name . '_format' : "$field_name/format" ;
$migration->setProcessOfProperty("$field_name/value", $value_key);
// See \Drupal\migrate_drupal\Plugin\migrate\source\d6\User::baseFields(),
// signature_format for an example of the YAML that represents this
// process array.
$process = [
[
'plugin' => 'static_map',
'bypass' => TRUE,
'source' => $format_key,
'map' => [0 => NULL]
],
[
'plugin' => 'skip_on_empty',
'method' => 'process',
],
[
'plugin' => 'migration',
'migration' => 'd6_filter_format',
'source' => $format_key,
],
];
$migration->mergeProcessOfProperty("$field_name/format", $process);
}
/**
* Manipulate file fields with any per field type processing.
*
* @param string $field_name
* The field we're processing.
* @param array $field_data
* The an array of field type data from the source.
* @param \Drupal\migrate\Entity\MigrationInterface $migration
* The migration entity.
*/
protected function processFileField($field_name, $field_data, MigrationInterface $migration) {
$process = [
'plugin' => 'd6_cck_file',
'source' => [
$field_name,
$field_name . '_list',
$field_name . '_data',
],
];
$migration->mergeProcessOfProperty($field_name, $process);
}
}

View file

@ -1,64 +0,0 @@
<?php
/**
* @file
* Contains \Drupal\migrate_drupal\Plugin\migrate\load\d6\LoadTermNode.
*/
namespace Drupal\migrate_drupal\Plugin\migrate\load\d6;
use Drupal\Core\Entity\EntityStorageInterface;
use Drupal\migrate\Entity\MigrationInterface;
use Drupal\migrate\MigrateExecutable;
use Drupal\migrate\MigrateMessage;
use Drupal\migrate\Row;
use Drupal\migrate_drupal\Plugin\migrate\load\LoadEntity;
/**
* @PluginID("d6_term_node")
*/
class LoadTermNode extends LoadEntity {
/**
* {@inheritdoc}
*/
public function __construct(array $configuration, $plugin_id, array $plugin_definition, MigrationInterface $migration) {
$configuration['bundle_migration'] = 'd6_taxonomy_vocabulary';
parent::__construct($configuration, $plugin_id, $plugin_definition, $migration);
}
/**
* {@inheritdoc}
*/
public function loadMultiple(EntityStorageInterface $storage, array $sub_ids = NULL) {
/** @var \Drupal\migrate\Entity\MigrationInterface $bundle_migration */
$bundle_migration = $storage->load('d6_taxonomy_vocabulary');
$migrate_executable = new MigrateExecutable($bundle_migration, new MigrateMessage());
$process = array_intersect_key($bundle_migration->get('process'), $bundle_migration->getDestinationPlugin()->getIds());
$migrations = array();
$vid_map = array();
foreach ($bundle_migration->getIdMap() as $key => $value) {
$old_vid = unserialize($key)['sourceid1'];
$new_vid = $value['destid1'];
$vid_map[$old_vid] = $new_vid;
}
foreach ($bundle_migration->getSourcePlugin()->getIterator() as $source_row) {
$row = new Row($source_row, $source_row);
$migrate_executable->processRow($row, $process);
$old_vid = $source_row['vid'];
$new_vid = $row->getDestinationProperty('vid');
$vid_map[$old_vid] = $new_vid;
}
foreach ($vid_map as $old_vid => $new_vid) {
$values = $this->migration->toArray();
$migration_id = $this->migration->id() . ':' . $old_vid;
$values['id'] = $migration_id;
$values['source']['vid'] = $old_vid;
$values['process'][$new_vid] = 'tid';
$migrations[$migration_id] = $storage->create($values);;
}
return $migrations;
}
}

View file

@ -1,100 +0,0 @@
<?php
/**
* @file
* Contains \Drupal\migrate_drupal\Plugin\migrate\process\d6\BlockPluginId.
*/
namespace Drupal\migrate_drupal\Plugin\migrate\process\d6;
use Drupal\Core\Entity\EntityStorageInterface;
use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
use Drupal\migrate\Entity\MigrationInterface;
use Drupal\migrate\MigrateExecutableInterface;
use Drupal\migrate\MigrateSkipRowException;
use Drupal\migrate\Plugin\MigratePluginManager;
use Drupal\migrate\ProcessPluginBase;
use Drupal\migrate\Row;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* @MigrateProcessPlugin(
* id = "d6_block_plugin_id"
* )
*/
class BlockPluginId extends ProcessPluginBase implements ContainerFactoryPluginInterface {
/**
* @var \Drupal\migrate\Plugin\MigratePluginManager
*/
protected $processPluginManager;
/**
* @var \Drupal\Core\Entity\EntityStorageInterface
*/
protected $blockContentStorage;
/**
* {@inheritdoc}
*/
public function __construct(array $configuration, $plugin_id, array $plugin_definition, MigrationInterface $migration, EntityStorageInterface $storage, MigratePluginManager $process_plugin_manager) {
parent::__construct($configuration, $plugin_id, $plugin_definition);
$this->blockContentStorage = $storage;
$this->migration = $migration;
$this->processPluginManager = $process_plugin_manager;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration = NULL) {
$entity_manager = $container->get('entity.manager');
return new static(
$configuration,
$plugin_id,
$plugin_definition,
$migration,
$entity_manager->getDefinition('block_content') ? $entity_manager->getStorage('block_content') : NULL,
$container->get('plugin.manager.migrate.process')
);
}
/**
* {@inheritdoc}
*
* Set the block plugin id.
*/
public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
if (is_array($value)) {
list($module, $delta) = $value;
switch ($module) {
case 'aggregator':
list($type, $id) = explode('-', $delta);
if ($type == 'category') {
// @TODO skip row.
// throw new MigrateSkipRowException();
}
$value = 'aggregator_feed_block';
break;
case 'menu':
$value = "system_menu_block:$delta";
break;
case 'block':
if ($this->blockContentStorage) {
$block_ids = $this->processPluginManager
->createInstance('migration', array('migration' => 'd6_custom_block'), $this->migration)
->transform($delta, $migrate_executable, $row, $destination_property);
$value = 'block_content:' . $this->blockContentStorage->load($block_ids[0])->uuid();
}
else {
throw new MigrateSkipRowException();
}
break;
default:
throw new MigrateSkipRowException();
}
}
return $value;
}
}

Some files were not shown because too many files have changed in this diff Show more