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

@ -0,0 +1,17 @@
id: d6_cck_field_revision
label: Drupal 6 field revisions
migration_tags:
- Drupal 6
load:
plugin: drupal_entity
bundle_migration: d6_node_type
source:
plugin: d6_cck_field_revision
process:
vid: vid
destination:
plugin: entity_revision:node
migration_dependencies:
required:
- d6_cck_field_values
- d6_node_revision

View file

@ -0,0 +1,21 @@
id: d6_cck_field_values
label: Drupal 6 field values
migration_tags:
- Drupal 6
load:
plugin: drupal_entity
bundle_migration: d6_node_type
source:
plugin: d6_cck_field_values
process:
nid:
plugin: migration
migration: d6_node
source: nid
destination:
plugin: entity:node
migration_dependencies:
required:
- d6_node
- d6_field_formatter_settings
- d6_field_instance_widget_settings

View file

@ -0,0 +1,45 @@
id: d6_comment
label: Drupal 6 comments
migration_tags:
- Drupal 6
source:
plugin: d6_comment
constants:
entity_type: node
process:
cid: cid
pid:
plugin: migration
migration: d6_comment
source: pid
entity_id: nid
entity_type: 'constants/entity_type'
# field_name & comment_type is calculated in
# \Drupal\migrate_drupal\Plugin\migrate\source\d6\Comment::prepareRow()
field_name: field_name
comment_type: comment_type
subject: subject
uid: uid
name: name
mail: mail
homepage: homepage
hostname: hostname
created: timestamp
changed: timestamp
status: status #In D6, published=0. We reverse the value in prepareRow.
thread: thread
'comment_body/value': comment
'comment_body/format':
plugin: migration
migration: d6_filter_format
source: format
destination:
plugin: entity:comment
migration_dependencies:
required:
- d6_node
- d6_comment_type
- d6_user
- d6_comment_entity_display
- d6_comment_entity_form_display
- d6_filter_format

View file

@ -0,0 +1,26 @@
id: d6_comment_entity_display
label: Drupal 6 comment display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_comment_variable
constants:
entity_type: node
field_name: comment
view_mode: default
options:
label: hidden
type: comment_default
weight: 20
process:
entity_type: 'constants/entity_type'
field_name: 'constants/field_name'
view_mode: 'constants/view_mode'
options: 'constants/options'
bundle: node_type
destination:
plugin: component_entity_display
migration_dependencies:
required:
- d6_comment_field_instance

View file

@ -0,0 +1,25 @@
id: d6_comment_entity_form_display
label: Drupal 6 comment field form display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_comment_variable
constants:
entity_type: node
field_name: comment
form_mode: default
options:
type: comment_default
weight: 20
process:
entity_type: 'constants/entity_type'
field_name: 'constants/field_name'
form_mode: 'constants/form_mode'
options: 'constants/options'
bundle: node_type
destination:
plugin: component_entity_form_display
migration_dependencies:
required:
- d6_comment_field_instance

View file

@ -0,0 +1,32 @@
id: d6_comment_entity_form_display_subject
label: Drupal 6 comment subject form display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_comment_variable_per_comment_type
constants:
entity_type: comment
field_name: subject
form_mode: default
options:
type: string_textfield
weight: 10
process:
entity_type: 'constants/entity_type'
field_name: 'constants/field_name'
form_mode: 'constants/form_mode'
options: 'constants/options'
hidden:
plugin: static_map
source: comment_type
default_value: false
map:
comment_no_subject: true # Hide subject field
comment: false
bundle: comment_type
destination:
plugin: component_entity_form_display
migration_dependencies:
required:
- d6_comment_type

View file

@ -0,0 +1,19 @@
id: d6_comment_field
label: Drupal 6 comment field configuration
migration_tags:
- Drupal 6
source:
plugin: d6_comment_variable_per_comment_type
constants:
entity_type: node
type: comment
process:
entity_type: 'constants/entity_type'
field_name: comment_type
type: 'constants/type'
'settings/comment_type': comment_type
destination:
plugin: md_entity:field_storage_config
migration_dependencies:
required:
- d6_comment_type

View file

@ -0,0 +1,34 @@
id: d6_comment_field_instance
label: Drupal 6 comment field instance configuration
migration_tags:
- Drupal 6
source:
plugin: d6_comment_variable
constants:
entity_type: node
label: Comments
required: true
process:
entity_type: 'constants/entity_type'
label: 'constants/label'
required: 'constants/required'
field_name:
plugin: static_map
source: comment_subject_field
default_value: comment
map:
0: comment_no_subject
bundle: node_type
'default_value/0/status': comment
'settings/default_mode': comment_default_mode
'settings/per_page': comment_default_per_page
'settings/anonymous': comment_anonymous
'settings/form_location': comment_form_location
'settings/preview': comment_preview
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_comment_field
- d6_node_type

View file

@ -0,0 +1,15 @@
id: d6_comment_type
label: Drupal 6 comment type
migration_tags:
- Drupal 6
source:
plugin: d6_comment_variable_per_comment_type
constants:
entity_type: node
process:
target_entity_type_id: 'constants/entity_type'
id: comment_type
label: label
description: description
destination:
plugin: entity:comment_type

View file

@ -0,0 +1,133 @@
id: d6_field
label: Drupal 6 field configuration
migration_tags:
- Drupal 6
source:
plugin: d6_field
constants:
entity_type: node
langcode: en
process:
entity_type: 'constants/entity_type'
status: active
langcode: 'constants/langcode'
field_name: field_name
type:
-
plugin: static_map
source:
- type
- widget_type
map:
number_integer:
number: integer
optionwidgets_select: list_integer
optionwidgets_buttons: list_integer
optionwidgets_onoff: boolean
number_decimal:
number: decimal
optionwidgets_select: list_float
optionwidgets_buttons: list_float
optionwidgets_onoff: boolean
number_float:
number: float
optionwidgets_select: list_float
optionwidgets_buttons: list_float
optionwidgets_onoff: boolean
text:
optionwidgets_select: list_string
optionwidgets_buttons: list_string
optionwidgets_onoff: boolean
text_textfield: text
text_textarea: text_long
email:
email_textfield: email
filefield:
imagefield_widget: image
filefield_widget: file
date:
date_select: datetime
datestamp:
date_select: datetime
datetime:
date_select: datetime
fr_phone:
phone_textfield: telephone
be_phone:
phone_textfield: telephone
it_phone:
phone_textfield: telephone
el_phone:
phone_textfield: telephone
ch_phone:
phone_textfield: telephone
ca_phone:
phone_textfield: telephone
cr_phone:
phone_textfield: telephone
pa_phone:
phone_textfield: telephone
gb_phone:
phone_textfield: telephone
ru_phone:
phone_textfield: telephone
ua_phone:
phone_textfield: telephone
es_phone:
phone_textfield: telephone
au_phone:
phone_textfield: telephone
cs_phone:
phone_textfield: telephone
hu_phone:
phone_textfield: telephone
pl_phone:
phone_textfield: telephone
nl_phone:
phone_textfield: telephone
se_phone:
phone_textfield: telephone
za_phone:
phone_textfield: telephone
il_phone:
phone_textfield: telephone
nz_phone:
phone_textfield: telephone
br_phone:
phone_textfield: telephone
cl_phone:
phone_textfield: telephone
cn_phone:
phone_textfield: telephone
hk_phone:
phone_textfield: telephone
mo_phone:
phone_textfield: telephone
ph_phone:
phone_textfield: telephone
sg_phone:
phone_textfield: telephone
jo_phone:
phone_textfield: telephone
eg_phone:
phone_textfield: telephone
pk_phone:
phone_textfield: telephone
int_phone:
phone_textfield: telephone
cardinality:
plugin: static_map
bypass: true
source: multiple
map:
0: 1
1: -1
settings:
plugin: field_settings
source:
- @type
- global_settings
- widget_settings
destination:
plugin: md_entity:field_storage_config

View file

@ -0,0 +1,252 @@
id: d6_field_formatter_settings
label: Drupal 6 field formatter configuration
migration_tags:
- Drupal 6
source:
plugin: d6_field_instance_per_view_mode
constants:
entity_type: node
third_party_settings: { }
process:
# We skip field types that don't exist because they weren't migrated by the
# field migration.
field_type_exists:
-
plugin: migration
migration: d6_field
source:
- field_name
-
plugin: extract
index:
- 1
-
plugin: skip_on_empty
method: row
entity_type: 'constants/entity_type'
bundle: type_name
view_mode:
-
plugin: migration
migration: d6_view_modes
source:
- view_mode
-
plugin: extract
index:
- 1
-
plugin: static_map
bypass: true
map:
full: default
field_name: field_name
"options/label": label
"options/weight": weight
"options/type":
-
plugin: static_map
bypass: true
source:
- type
- 'display_settings/format'
map:
number_integer:
default: number_integer
us_0: number_integer
be_0: number_integer
fr_0: number_integer
unformatted: number_unformatted
number_float:
default: number_decimal
us_0: number_decimal
us_1: number_decimal
us_2: number_decimal
be_0: number_decimal
be_1: number_decimal
be_2: number_decimal
fr_0: number_decimal
fr_1: number_decimal
fr_2: number_decimal
unformatted: number_unformatted
number_decimal:
default: number_decimal
us_0: number_decimal
us_1: number_decimal
us_2: number_decimal
be_0: number_decimal
be_1: number_decimal
be_2: number_decimal
fr_0: number_decimal
fr_1: number_decimal
fr_2: number_decimal
unformatted: number_unformatted
email:
default: email_mailto
spamspan: email_mailto
contact: email_mailto
plain: basic_string
fr_phone:
default: basic_string
be_phone:
default: basic_string
it_phone:
default: basic_string
el_phone:
default: basic_string
ch_phone:
default: basic_string
ca_phone:
default: basic_string
cr_phone:
default: basic_string
pa_phone:
default: basic_string
gb_phone:
default: basic_string
ru_phone:
default: basic_string
ua_phone:
default: basic_string
es_phone:
default: basic_string
au_phone:
default: basic_string
cs_phone:
default: basic_string
hu_phone:
default: basic_string
pl_phone:
default: basic_string
nl_phone:
default: basic_string
se_phone:
default: basic_string
za_phone:
default: basic_string
il_phone:
default: basic_string
nz_phone:
default: basic_string
br_phone:
default: basic_string
cl_phone:
default: basic_string
cn_phone:
default: basic_string
hk_phone:
default: basic_string
mo_phone:
default: basic_string
ph_phone:
default: basic_string
sg_phone:
default: basic_string
jo_phone:
default: basic_string
eg_phone:
default: basic_string
pk_phone:
default: basic_string
int_phone:
default: basic_string
-
plugin: field_type_defaults
"options/settings":
-
plugin: static_map
bypass: true
source:
- module
- 'display_settings/format'
map:
link:
default:
trim_length: '80'
url_only: 0
url_plain: 0
rel: 0
target: 0
plain:
trim_length: '80'
url_only: 1
url_plain: 1
rel: 0
target: 0
absolute:
trim_length: '80'
url_only: 1
url_plain: 1
rel: 0
target: 0
title_plain: #can't support title as plain text.
trim_length: '80'
url_only: 1
url_plain: 1
rel: 0
target: 0
url:
trim_length: '80'
url_only: 1
url_plain: 0
rel: 0
target: 0
short: #can't support hardcoded link text?
trim_length: '80'
url_only: 0
url_plain: 0
rel: 0
target: 0
label: # can't support label as link text?
trim_length: '80'
url_only: 0
url_plain: 0
rel: 0
target: 0
separate:
trim_length: '80'
rel: 0
target: 0
filefield:
image_plain:
image_style: ''
image_link: ''
image_nodelink:
image_style: ''
image_link: content
image_imagelink:
image_style: ''
image_link: file
date:
default:
format_type: fallback
timezone_override: ''
format_interval:
format_type: fallback
timezone_override: ''
long:
format_type: long
timezone_override: ''
medium:
format_type: medium
timezone_override: ''
short:
format_type: short
timezone_override: ''
text:
trimmed:
trim_length: 600
string:
default:
link_to_entity: false
-
plugin: field_formatter_settings_defaults
"options/third_party_settings": 'constants/third_party_settings'
destination:
plugin: component_entity_display
migration_dependencies:
required:
- d6_field_instance
- d6_view_modes

View file

@ -0,0 +1,52 @@
id: d6_field_instance
label: Drupal 6 field instance configuration
migration_tags:
- Drupal 6
source:
plugin: d6_field_instance
constants:
entity_type: node
process:
# We skip field types that don't exist because they weren't migrated by the
# field migration.
field_type_exists:
-
plugin: migration
migration: d6_field
source:
- field_name
-
plugin: extract
index:
- 1
-
plugin: skip_on_empty
method: row
entity_type: 'constants/entity_type'
field_name: field_name
bundle: type_name
label: label
description: description
required: required
status: active
settings:
plugin: d6_field_field_settings
source:
- widget_type
- widget_settings
- global_settings
default_value_callback: ''
default_value:
plugin: d6_field_instance_defaults
source:
- widget_type
- widget_settings
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_node_type
- d6_field

View file

@ -0,0 +1,60 @@
id: d6_field_instance_widget_settings
label: Drupal 6 field instance widget configuration
migration_tags:
- Drupal 6
source:
plugin: d6_field_instance_per_form_display
constants:
entity_type: node
form_mode: default
third_party_settings: { }
process:
# We skip field types that don't exist because they weren't migrated by the
# field migration.
field_type_exists:
-
plugin: migration
migration: d6_field
source:
- field_name
-
plugin: extract
index:
- 1
-
plugin: skip_on_empty
method: row
bundle: type_name
form_mode: 'constants/form_mode'
field_name: field_name
entity_type: 'constants/entity_type'
'options/weight': weight
'options/type':
type:
plugin: static_map
bypass: true
source: widget_type
map:
number: number
email_textfield: email_default
date_select: datetime_default
date_text: datetime_default
imagefield_widget: image_image
phone_textfield: telephone_default
optionwidgets_onoff: boolean_checkbox
optionwidgets_buttons: options_buttons
optionwidgets_select: options_select
'options/settings':
-
plugin: field_instance_widget_settings
source:
- widget_type
- widget_settings
'options/third_party_settings': 'constants/third_party_settings'
destination:
plugin: component_entity_form_display
migration_dependencies:
required:
- d6_field_instance

View file

@ -0,0 +1,25 @@
# Every migration that saves into {file_managed} must have the d6_file
# migration as an optional dependency to ensure d6_file runs first.
id: d6_file
label: Drupal 6 files
migration_tags:
- Drupal 6
source:
plugin: d6_file
process:
fid: fid
filename: filename
uri:
plugin: file_uri
source:
- filepath
- file_directory_path
- temp_directory_path
- is_public
filemime: filemime
filesize: filesize
status: status
changed: timestamp
uid: uid
destination:
plugin: entity:file

View file

@ -0,0 +1,17 @@
id: d6_file_settings
label: Drupal 6 file configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- file_description_type
- file_description_length
- file_icon_directory
process:
'description/type': file_description_type
'description/length': file_description_length
'icon/directory': file_icon_directory
destination:
plugin: config
config_name: file.settings

View file

@ -0,0 +1,18 @@
id: d6_profile_values
label: Drupal 6 profile values
migration_tags:
- Drupal 6
source:
plugin: d6_profile_field_values
load:
plugin: drupal_entity
process:
uid: uid
destination:
plugin: entity:user
migration_dependencies:
required:
- d6_user
- d6_user_profile_field_instance
- d6_user_profile_entity_display
- d6_user_profile_entity_form_display

View file

@ -0,0 +1,27 @@
id: d6_upload
label: Drupal 6 file uploads
migration_tags:
- Drupal 6
source:
plugin: d6_upload
process:
nid: nid
vid: vid
type: type
upload:
plugin: iterator
source: upload
process:
target_id:
plugin: migration
migration: d6_file
source: fid
display: list
description: description
destination:
plugin: entity:node
migration_dependencies:
required:
- d6_file
- d6_node

View file

@ -0,0 +1,27 @@
id: d6_upload_entity_display
label: Drupal 6 upload display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_upload_instance
constants:
entity_type: node
view_mode: default
name: upload
type: file_default
options:
label: hidden
settings: {}
process:
entity_type: 'constants/entity_type'
bundle: node_type
view_mode: 'constants/view_mode'
field_name: 'constants/name'
type: 'constants/type'
options: 'constants/options'
'options/type': @type
destination:
plugin: component_entity_display
migration_dependencies:
required:
- d6_upload_field_instance

View file

@ -0,0 +1,28 @@
id: d6_upload_entity_form_display
label: Drupal 6 upload form display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_upload_instance
constants:
empty: {}
entity_type: node
form_mode: default
name: upload
type: file_generic
options:
settings:
progress_indicator: throbber
process:
entity_type: 'constants/entity_type'
bundle: node_type
field_name: 'constants/name'
form_mode: 'constants/form_mode'
type: 'constants/type'
options: 'constants/options'
'options/type': @type
destination:
plugin: component_entity_form_display
migration_dependencies:
required:
- d6_upload_field_instance

View file

@ -0,0 +1,23 @@
id: d6_upload_field
label: Drupal 6 upload 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
provider: upload
constants:
entity_type: node
type: file
name: upload
cardinality: -1
display_field: true
process:
entity_type: 'constants/entity_type'
field_name: 'constants/name'
type: 'constants/type'
cardinality: 'constants/cardinality'
'settings/display_field': 'constants/display_field'
destination:
plugin: md_entity:field_storage_config

View file

@ -0,0 +1,24 @@
id: d6_upload_field_instance
label: Drupal 6 upload field instance configuration
migration_tags:
- Drupal 6
source:
plugin: d6_upload_instance
constants:
entity_type: node
name: upload
settings:
description_field: 1
process:
entity_type: 'constants/entity_type'
bundle: node_type
field_name: 'constants/name'
settings: 'constants/settings'
'settings/file_extensions': file_extensions
'settings/max_filesize': max_filesize
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_upload_field
- d6_node_type

View file

@ -0,0 +1,37 @@
id: d6_user
label: Drupal 6 user accounts
migration_tags:
- Drupal 6
source:
plugin: d6_user
process:
uid: uid
name: name
pass: pass
mail: mail
created: created
access: access
login: login
status: status
timezone:
plugin: user_update_7002
source: timezone
preferred_langcode: language
init: init
roles:
plugin: migration
migration: d6_user_role
source: roles
user_picture:
plugin: d6_user_picture
source: uid
destination:
plugin: entity:user
md5_passwords: true
migration_dependencies:
required:
- d6_user_role
optional:
- d6_user_picture_file
- d6_user_picture_entity_display
- d6_user_picture_entity_form_display

View file

@ -0,0 +1,23 @@
id: d6_user_contact_settings
label: Drupal 6 user contact settings
migration_tags:
- Drupal 6
source:
plugin: d6_user
constants:
key: contact
module: contact
process:
uid: uid
key: 'constants/key'
module: 'constants/module'
settings:
plugin: skip_row_if_not_set
index: contact
source: data
destination:
plugin: user_data
migration_dependencies:
required:
- d6_user

View file

@ -0,0 +1,39 @@
id: d6_user_mail
label: Drupal 6 user mail configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- user_mail_status_activated_subject
- user_mail_status_activated_body
- user_mail_password_reset_subject
- user_mail_password_reset_body
- user_mail_status_deleted_subject
- user_mail_status_deleted_body
- user_mail_register_admin_created_subject
- user_mail_register_admin_created_body
- user_mail_register_no_approval_required_subject
- user_mail_register_no_approval_required_body
- user_mail_user_mail_register_pending_approval_subject
- user_mail_user_mail_register_pending_approval_body
- user_mail_status_blocked_subject
- user_mail_status_blocked_body
process:
'status_activated/subject': user_mail_status_activated_subject
'status_activated/body': user_mail_status_activated_body
'password_reset/subject': user_mail_password_reset_subject
'password_reset/body': user_mail_password_reset_body
'cancel_confirm/subject': user_mail_status_deleted_subject
'cancel_confirm/body': user_mail_status_deleted_body
'register_admin_created/subject': user_mail_register_admin_created_subject
'register_admin_created/body': user_mail_register_admin_created_body
'register_no_approval_required/subject': user_mail_register_no_approval_required_subject
'register_no_approval_required/body': user_mail_register_no_approval_required_body
'register_pending_approval/subject': user_mail_user_mail_register_pending_approval_subject
'register_pending_approval/body': user_mail_user_mail_register_pending_approval_body
'status_blocked/subject': user_mail_status_blocked_subject
'status_blocked/body': user_mail_status_blocked_body
destination:
plugin: config
config_name: user.mail

View file

@ -0,0 +1,30 @@
id: d6_user_picture_entity_display
label: Drupal 6 user picture display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_user_picture_instance
constants:
entity_type: user
bundle: user
view_mode: default
name: user_picture
type: image
options:
label: hidden
settings:
image_style: ''
image_link: content
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
view_mode: 'constants/view_mode'
field_name: 'constants/name'
type: 'constants/type'
options: 'constants/options'
'options/type': @type
destination:
plugin: component_entity_display
migration_dependencies:
required:
- d6_user_picture_field_instance

View file

@ -0,0 +1,29 @@
id: d6_user_picture_entity_form_display
label: Drupal 6 user picture form display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_user_picture_instance
constants:
entity_type: user
bundle: user
form_mode: default
name: user_picture
type: image_image
options:
settings:
progress_indicator: throbber
preview_image_style: thumbnail
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
field_name: 'constants/name'
form_mode: 'constants/form_mode'
type: 'constants/type'
options: 'constants/options'
'options/type': @type
destination:
plugin: component_entity_form_display
migration_dependencies:
required:
- d6_user_picture_field_instance

View file

@ -0,0 +1,20 @@
id: d6_user_picture_field
label: Drupal 6 user picture field configuration
migration_tags:
- Drupal 6
source:
# We do an empty source and a proper destination to have an idmap for
# dependencies.
plugin: md_empty
constants:
entity_type: user
type: image
name: user_picture
cardinality: 1
process:
entity_type: 'constants/entity_type'
field_name: 'constants/name'
type: 'constants/type'
cardinality: 'constants/cardinality'
destination:
plugin: md_entity:field_storage_config

View file

@ -0,0 +1,30 @@
id: d6_user_picture_field_instance
label: Drupal 6 user picture field instance configuration
migration_tags:
- Drupal 6
source:
plugin: d6_user_picture_instance
constants:
entity_type: user
bundle: user
name: user_picture
settings:
file_extensions: 'png gif jpg jpeg'
alt_field: false
title_field: false
min_resolution: ''
alt_field_required: false
title_field_required: false
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
field_name: 'constants/name'
settings: 'constants/settings'
'settings/file_directory': file_directory
'settings/max_filesize': max_filesize
'settings/max_resolution': max_resolution
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_user_picture_field

View file

@ -0,0 +1,26 @@
id: d6_user_picture_file
label: Drupal 6 user pictures
migration_tags:
- Drupal 6
source:
plugin: d6_user_picture_file
constants:
is_public: true
process:
filename: filename
uid: uid
uri:
plugin: file_uri
source:
- picture
- file_directory_path
- temp_directory_path
- 'constants/is_public'
destination:
plugin: entity:file
source_path_property: picture
migration_dependencies:
# Every migration that saves into {file_managed} must have the d6_file
# migration as an optional dependency to ensure it runs first.
optional:
- d6_file

View file

@ -0,0 +1,40 @@
id: d6_user_profile_entity_display
label: Drupal 6 user profile display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_profile_field
constants:
entity_type: user
bundle: user
view_mode: default
options:
label: hidden
settings: {}
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
view_mode: 'constants/view_mode'
field_name: name
type:
plugin: static_map
source: type
map:
checkbox: list_default
date: datetime_default
list: text_default
selection: list_default
textfield: text_default
textarea: text_default
url: link_default
options: 'constants/options'
'options/type': @type
hidden:
plugin: static_map
source: visibility
default_value: false
map:
1: true # PROFILE_PRIVATE
4: true # PROFILE_HIDDEN
destination:
plugin: component_entity_display

View file

@ -0,0 +1,49 @@
id: d6_user_profile_entity_form_display
label: Drupal 6 user profile form display configuration
migration_tags:
- Drupal 6
source:
plugin: d6_profile_field
constants:
empty: {}
entity_type: user
bundle: user
form_mode: default
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
field_name: name
form_mode: 'constants/form_mode'
type:
plugin: static_map
source: type
map:
checkbox: boolean_checkbox
date: datetime_default
list: text_textfield
selection: options_select
textfield: text_textfield
textarea: text_textarea
url: link_default
options: 'constants/options'
'options/type': @type
'options/settings':
plugin: field_instance_widget_settings
source:
- @type
- 'constants/empty' # we don't have any settings.
'options/settings/display_label': # Single on/off checkboxes need to have display_label = true otherwise their label doesn't show.
plugin: static_map
default_value: false
source: type
map:
checkbox: true
hidden:
plugin: static_map
source: visibility
default_value: false
map:
1: true # PROFILE_PRIVATE
4: true # PROFILE_HIDDEN
destination:
plugin: component_entity_form_display

View file

@ -0,0 +1,34 @@
id: d6_user_profile_field
label: Drupal 6 user profile field configuration
migration_tags:
- Drupal 6
source:
plugin: d6_profile_field
constants:
entity_type: user
process:
entity_type: 'constants/entity_type'
field_name: name
type:
plugin: static_map
source: type
map:
checkbox: boolean
date: datetime
list: text
selection: list_string
textfield: text
textarea: text_long
url: link
settings:
plugin: d6_profile_field_settings
source: type
'settings/allowed_values': options
cardinality:
plugin: static_map
default_value: 1
source: type
map:
list: -1
destination:
plugin: md_entity:field_storage_config

View file

@ -0,0 +1,21 @@
id: d6_user_profile_field_instance
label: Drupal 6 user profile field instance configuration
migration_tags:
- Drupal 6
source:
plugin: d6_profile_field
constants:
entity_type: user
bundle: user
process:
entity_type: 'constants/entity_type'
bundle: 'constants/bundle'
label: title
description: explanation
field_name: name
required: required
destination:
plugin: entity:field_config
migration_dependencies:
required:
- d6_user_profile_field

View file

@ -0,0 +1,46 @@
id: d6_user_role
label: Drupal 6 user roles
migration_tags:
- Drupal 6
source:
plugin: d6_user_role
process:
id:
-
plugin: machine_name
source: name
-
plugin: dedupe_entity
entity_type: user_role
field: id
length: 32
-
plugin: user_update_8002
label: name
permissions:
-
plugin: static_map
source: permissions
bypass: true
map:
'use PHP for block visibility': 'use PHP for settings'
'administer site-wide contact form': 'administer contact forms'
'post comments without approval': 'skip comment approval'
'edit own blog entries' : 'edit own blog content'
'edit any blog entry' : 'edit any blog content'
'delete own blog entries' : 'delete own blog content'
'delete any blog entry' : 'delete any blog content'
'create forum topics' : 'create forum content'
'delete any forum topic' : 'delete any forum content'
'delete own forum topics' : 'delete own forum content'
'edit any forum topic' : 'edit any forum content'
'edit own forum topics' : 'edit own forum content'
- plugin: system_update_7000
- plugin: node_update_7008
- plugin: flatten
- plugin: filter_format_permission
destination:
plugin: entity:user_role
migration_dependencies:
required:
- d6_filter_format

View file

@ -0,0 +1,28 @@
id: d6_user_settings
label: Drupal 6 user configuration
migration_tags:
- Drupal 6
source:
plugin: variable
variables:
- user_mail_status_blocked_notify
- user_mail_status_activated_notify
- user_email_verification
- user_register
- anonymous
process:
'notify/status_blocked': user_mail_status_blocked_notify
'notify/status_activated': user_mail_status_activated_notify
verify_mail: user_email_verification
register:
plugin: static_map
source: user_register
default_value: visitors_admin_approval
map:
2: visitors_admin_approval
1: user_register
0: admin_only
anonymous: anonymous
destination:
plugin: config
config_name: user.settings