Merge branch 'migration-part-2' into 'master'
Migration part 2 See merge request agaric/sites/agaric-com!6
This commit is contained in:
commit
09b529e8be
20 changed files with 583 additions and 15 deletions
|
@ -5,11 +5,16 @@ dependencies:
|
|||
config:
|
||||
- field.field.node.page.body
|
||||
- field.field.node.page.field_body_paragraph
|
||||
- field.field.node.page.field_file
|
||||
- field.field.node.page.field_image
|
||||
- field.field.node.page.field_meta_tags
|
||||
- field.field.node.page.field_storyline
|
||||
- field.field.node.page.field_summary
|
||||
- image.style.thumbnail
|
||||
- node.type.page
|
||||
module:
|
||||
- file
|
||||
- image
|
||||
- metatag
|
||||
- paragraphs
|
||||
- path
|
||||
|
@ -39,6 +44,21 @@ content:
|
|||
third_party_settings: { }
|
||||
type: entity_reference_paragraphs
|
||||
region: content
|
||||
field_file:
|
||||
weight: 27
|
||||
settings:
|
||||
progress_indicator: throbber
|
||||
third_party_settings: { }
|
||||
type: file_generic
|
||||
region: content
|
||||
field_image:
|
||||
weight: 26
|
||||
settings:
|
||||
progress_indicator: throbber
|
||||
preview_image_style: thumbnail
|
||||
third_party_settings: { }
|
||||
type: image_image
|
||||
region: content
|
||||
field_meta_tags:
|
||||
weight: 6
|
||||
settings: { }
|
||||
|
|
|
@ -3,11 +3,15 @@ langcode: en
|
|||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.field.user.user.field_bio
|
||||
- field.field.user.user.field_gpg_public_key
|
||||
- field.field.user.user.user_picture
|
||||
- image.style.thumbnail
|
||||
module:
|
||||
- file
|
||||
- image
|
||||
- path
|
||||
- text
|
||||
- user
|
||||
_core:
|
||||
default_config_hash: cAoTuTfmGrGB_89qPV_cTRlA7NXOWtLCLePKVX4SO3A
|
||||
|
@ -19,12 +23,34 @@ content:
|
|||
account:
|
||||
weight: -10
|
||||
region: content
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
contact:
|
||||
weight: 5
|
||||
region: content
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
field_bio:
|
||||
weight: 32
|
||||
settings:
|
||||
rows: 9
|
||||
summary_rows: 3
|
||||
placeholder: ''
|
||||
third_party_settings: { }
|
||||
type: text_textarea_with_summary
|
||||
region: content
|
||||
field_gpg_public_key:
|
||||
weight: 31
|
||||
settings:
|
||||
progress_indicator: throbber
|
||||
third_party_settings: { }
|
||||
type: file_generic
|
||||
region: content
|
||||
language:
|
||||
weight: 0
|
||||
region: content
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
path:
|
||||
type: path
|
||||
weight: 30
|
||||
|
@ -34,6 +60,8 @@ content:
|
|||
timezone:
|
||||
weight: 6
|
||||
region: content
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
user_picture:
|
||||
type: image_image
|
||||
settings:
|
||||
|
|
|
@ -5,11 +5,16 @@ dependencies:
|
|||
config:
|
||||
- field.field.node.page.body
|
||||
- field.field.node.page.field_body_paragraph
|
||||
- field.field.node.page.field_file
|
||||
- field.field.node.page.field_image
|
||||
- field.field.node.page.field_meta_tags
|
||||
- field.field.node.page.field_storyline
|
||||
- field.field.node.page.field_summary
|
||||
- node.type.page
|
||||
module:
|
||||
- ds
|
||||
- file
|
||||
- image
|
||||
- user
|
||||
third_party_settings:
|
||||
ds:
|
||||
|
@ -34,10 +39,28 @@ id: node.page.default
|
|||
targetEntityType: node
|
||||
bundle: page
|
||||
mode: default
|
||||
content: { }
|
||||
content:
|
||||
field_file:
|
||||
weight: 2
|
||||
label: above
|
||||
settings:
|
||||
use_description_as_link_text: true
|
||||
third_party_settings: { }
|
||||
type: file_default
|
||||
region: content
|
||||
field_image:
|
||||
weight: 1
|
||||
label: above
|
||||
settings:
|
||||
image_style: ''
|
||||
image_link: ''
|
||||
third_party_settings: { }
|
||||
type: image
|
||||
region: content
|
||||
hidden:
|
||||
body: true
|
||||
field_body_paragraph: true
|
||||
field_meta_tags: true
|
||||
field_storyline: true
|
||||
field_summary: true
|
||||
links: true
|
||||
|
|
|
@ -3,10 +3,14 @@ langcode: en
|
|||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.field.user.user.field_bio
|
||||
- field.field.user.user.field_gpg_public_key
|
||||
- field.field.user.user.user_picture
|
||||
- image.style.thumbnail
|
||||
module:
|
||||
- file
|
||||
- image
|
||||
- text
|
||||
- user
|
||||
_core:
|
||||
default_config_hash: '-spcniWjm5Ez6YM3ccxk3ocvsn52jkdaGEgp0xzPYU8'
|
||||
|
@ -15,6 +19,21 @@ targetEntityType: user
|
|||
bundle: user
|
||||
mode: default
|
||||
content:
|
||||
field_bio:
|
||||
weight: 2
|
||||
label: above
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
type: text_default
|
||||
region: content
|
||||
field_gpg_public_key:
|
||||
weight: 1
|
||||
label: above
|
||||
settings:
|
||||
use_description_as_link_text: true
|
||||
third_party_settings: { }
|
||||
type: file_default
|
||||
region: content
|
||||
user_picture:
|
||||
type: image
|
||||
weight: 0
|
||||
|
|
27
config/sync/field.field.node.page.field_file.yml
Normal file
27
config/sync/field.field.node.page.field_file.yml
Normal file
|
@ -0,0 +1,27 @@
|
|||
uuid: f2978e92-efe9-45a5-b412-5e3e5ac98681
|
||||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.storage.node.field_file
|
||||
- node.type.page
|
||||
module:
|
||||
- file
|
||||
id: node.page.field_file
|
||||
field_name: field_file
|
||||
entity_type: node
|
||||
bundle: page
|
||||
label: file
|
||||
description: ''
|
||||
required: false
|
||||
translatable: false
|
||||
default_value: { }
|
||||
default_value_callback: ''
|
||||
settings:
|
||||
file_directory: '[date:custom:Y]-[date:custom:m]'
|
||||
file_extensions: 'txt pdf svg rtf odt odp ppt'
|
||||
max_filesize: ''
|
||||
description_field: false
|
||||
handler: 'default:file'
|
||||
handler_settings: { }
|
||||
field_type: file
|
38
config/sync/field.field.node.page.field_image.yml
Normal file
38
config/sync/field.field.node.page.field_image.yml
Normal file
|
@ -0,0 +1,38 @@
|
|||
uuid: 16782cd7-a9f3-4cf1-8e5b-eba74b6f239c
|
||||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.storage.node.field_image
|
||||
- node.type.page
|
||||
module:
|
||||
- image
|
||||
id: node.page.field_image
|
||||
field_name: field_image
|
||||
entity_type: node
|
||||
bundle: page
|
||||
label: Image
|
||||
description: ''
|
||||
required: false
|
||||
translatable: true
|
||||
default_value: { }
|
||||
default_value_callback: ''
|
||||
settings:
|
||||
file_directory: '[date:custom:Y]-[date:custom:m]'
|
||||
file_extensions: 'png gif jpg jpeg'
|
||||
max_filesize: ''
|
||||
max_resolution: ''
|
||||
min_resolution: ''
|
||||
alt_field: true
|
||||
alt_field_required: true
|
||||
title_field: false
|
||||
title_field_required: false
|
||||
default_image:
|
||||
uuid: ''
|
||||
alt: ''
|
||||
title: ''
|
||||
width: null
|
||||
height: null
|
||||
handler: 'default:file'
|
||||
handler_settings: { }
|
||||
field_type: image
|
21
config/sync/field.field.user.user.field_bio.yml
Normal file
21
config/sync/field.field.user.user.field_bio.yml
Normal file
|
@ -0,0 +1,21 @@
|
|||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.storage.user.field_bio
|
||||
module:
|
||||
- text
|
||||
- user
|
||||
id: user.user.field_bio
|
||||
field_name: field_bio
|
||||
entity_type: user
|
||||
bundle: user
|
||||
label: Bio
|
||||
description: ''
|
||||
required: false
|
||||
translatable: false
|
||||
default_value: { }
|
||||
default_value_callback: ''
|
||||
settings:
|
||||
display_summary: false
|
||||
field_type: text_with_summary
|
26
config/sync/field.field.user.user.field_gpg_public_key.yml
Normal file
26
config/sync/field.field.user.user.field_gpg_public_key.yml
Normal file
|
@ -0,0 +1,26 @@
|
|||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.storage.user.field_gpg_public_key
|
||||
module:
|
||||
- file
|
||||
- user
|
||||
id: user.user.field_gpg_public_key
|
||||
field_name: field_gpg_public_key
|
||||
entity_type: user
|
||||
bundle: user
|
||||
label: 'GPG public key'
|
||||
description: ''
|
||||
required: false
|
||||
translatable: false
|
||||
default_value: { }
|
||||
default_value_callback: ''
|
||||
settings:
|
||||
file_directory: ''
|
||||
file_extensions: asc
|
||||
max_filesize: ''
|
||||
description_field: false
|
||||
handler: 'default:file'
|
||||
handler_settings: { }
|
||||
field_type: file
|
23
config/sync/field.storage.node.field_file.yml
Normal file
23
config/sync/field.storage.node.field_file.yml
Normal file
|
@ -0,0 +1,23 @@
|
|||
uuid: 84ea971d-b192-4165-8178-ebf05f57662b
|
||||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- file
|
||||
- node
|
||||
id: node.field_file
|
||||
field_name: field_file
|
||||
entity_type: node
|
||||
type: file
|
||||
settings:
|
||||
display_field: true
|
||||
display_default: false
|
||||
uri_scheme: public
|
||||
target_type: file
|
||||
module: file
|
||||
locked: false
|
||||
cardinality: -1
|
||||
translatable: true
|
||||
indexes: { }
|
||||
persist_with_no_fields: false
|
||||
custom_storage: false
|
|
@ -15,7 +15,7 @@ type: image
|
|||
settings:
|
||||
uri_scheme: public
|
||||
default_image:
|
||||
uuid: null
|
||||
uuid: ''
|
||||
alt: ''
|
||||
title: ''
|
||||
width: null
|
||||
|
@ -25,7 +25,7 @@ settings:
|
|||
display_default: false
|
||||
module: image
|
||||
locked: false
|
||||
cardinality: 1
|
||||
cardinality: -1
|
||||
translatable: true
|
||||
indexes:
|
||||
target_id:
|
||||
|
|
18
config/sync/field.storage.user.field_bio.yml
Normal file
18
config/sync/field.storage.user.field_bio.yml
Normal file
|
@ -0,0 +1,18 @@
|
|||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- text
|
||||
- user
|
||||
id: user.field_bio
|
||||
field_name: field_bio
|
||||
entity_type: user
|
||||
type: text_with_summary
|
||||
settings: { }
|
||||
module: text
|
||||
locked: false
|
||||
cardinality: 1
|
||||
translatable: true
|
||||
indexes: { }
|
||||
persist_with_no_fields: false
|
||||
custom_storage: false
|
22
config/sync/field.storage.user.field_gpg_public_key.yml
Normal file
22
config/sync/field.storage.user.field_gpg_public_key.yml
Normal file
|
@ -0,0 +1,22 @@
|
|||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- file
|
||||
- user
|
||||
id: user.field_gpg_public_key
|
||||
field_name: field_gpg_public_key
|
||||
entity_type: user
|
||||
type: file
|
||||
settings:
|
||||
display_field: false
|
||||
display_default: false
|
||||
uri_scheme: public
|
||||
target_type: file
|
||||
module: file
|
||||
locked: false
|
||||
cardinality: 1
|
||||
translatable: true
|
||||
indexes: { }
|
||||
persist_with_no_fields: false
|
||||
custom_storage: false
|
|
@ -8,4 +8,4 @@ shared_configuration:
|
|||
dependencies:
|
||||
enforced:
|
||||
module:
|
||||
- agaric_migration
|
||||
- agaric_migration
|
||||
|
|
|
@ -0,0 +1,62 @@
|
|||
id: agaric_blog
|
||||
migration_group: agaric
|
||||
label: Agaric Blog
|
||||
source:
|
||||
plugin: d7_node
|
||||
node_type: blog
|
||||
destination:
|
||||
plugin: entity:node
|
||||
process:
|
||||
type:
|
||||
plugin: default_value
|
||||
default_value: blog
|
||||
langcode:
|
||||
plugin: default_value
|
||||
source: language
|
||||
default_value: "und"
|
||||
title: title
|
||||
uid:
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_user
|
||||
source: node_uid
|
||||
no_stub: true
|
||||
-
|
||||
plugin: skip_on_empty
|
||||
method: row
|
||||
paragraph_body:
|
||||
plugin: migration
|
||||
migration: agaric_blog_paragraph
|
||||
source: nid
|
||||
field_body_paragraph:
|
||||
plugin: iterator
|
||||
source:
|
||||
- '@paragraph_body'
|
||||
process:
|
||||
target_id: '0'
|
||||
target_revision_id: '1'
|
||||
field_image:
|
||||
-
|
||||
plugin: iterator
|
||||
source: field_image
|
||||
process:
|
||||
target_id:
|
||||
plugin: migration_lookup
|
||||
migration: agaric_file
|
||||
source: fid
|
||||
alt: alt
|
||||
title: title
|
||||
height: height
|
||||
width: width
|
||||
status: status
|
||||
created: created
|
||||
changed: changed
|
||||
promote: promote
|
||||
sticky: sticky
|
||||
revision_uid: revision_uid
|
||||
revision_log: log
|
||||
revision_timestamp: timestamp
|
||||
migration_dependencies:
|
||||
required:
|
||||
- agaric_user
|
||||
- agaric_blog_paragraph
|
|
@ -0,0 +1,30 @@
|
|||
id: agaric_blog_paragraph
|
||||
migration_group: agaric
|
||||
label: Blog Body paragraph
|
||||
source:
|
||||
plugin: d7_node
|
||||
node_type: blog
|
||||
process:
|
||||
uid:
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_user
|
||||
source: node_uid
|
||||
no_stub: true
|
||||
-
|
||||
plugin: skip_on_empty
|
||||
method: row
|
||||
status: status
|
||||
created: created
|
||||
parent_type: "node"
|
||||
field_text: body
|
||||
destination:
|
||||
plugin: 'entity_reference_revisions:paragraph'
|
||||
default_bundle: text
|
||||
dependencies:
|
||||
enforced:
|
||||
module:
|
||||
- paragraphs
|
||||
migration_dependencies:
|
||||
required:
|
||||
- agaric_user
|
|
@ -0,0 +1,74 @@
|
|||
id: agaric_comment
|
||||
migration_group: agaric
|
||||
label: Agaric Comments
|
||||
source:
|
||||
plugin: d7_comment
|
||||
constants:
|
||||
entity_type: node
|
||||
comment_type: comment
|
||||
default_pid: 0
|
||||
process:
|
||||
# All the threads are going to be flatten.
|
||||
pid: 'constants/default_pid'
|
||||
entity_id:
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration:
|
||||
- agaric_page
|
||||
- agaric_blog
|
||||
source_ids:
|
||||
agaric_page:
|
||||
- nid
|
||||
agaric_blog:
|
||||
- nid
|
||||
no_stub: true
|
||||
-
|
||||
plugin: skip_on_empty
|
||||
method: row
|
||||
entity_type: 'constants/entity_type'
|
||||
comment_type: 'constants/comment_type'
|
||||
field_name: '@comment_type'
|
||||
subject: subject
|
||||
uid:
|
||||
-
|
||||
plugin: migration_lookup_with_zero
|
||||
migration: agaric_user
|
||||
source: uid
|
||||
no_stub: true
|
||||
-
|
||||
plugin: default_value
|
||||
default_value: 0
|
||||
name: name
|
||||
mail: mail
|
||||
homepage: homepage
|
||||
hostname: hostname
|
||||
created: created
|
||||
changed: changed
|
||||
status: status
|
||||
thread: thread
|
||||
comment_body/format:
|
||||
-
|
||||
plugin: extract
|
||||
source: comment_body
|
||||
index:
|
||||
- 0
|
||||
- format
|
||||
-
|
||||
plugin: static_map
|
||||
map:
|
||||
filtered_html: 'basic_html'
|
||||
bypass: TRUE
|
||||
comment_body/value:
|
||||
-
|
||||
plugin: extract
|
||||
source: comment_body
|
||||
index:
|
||||
- 0
|
||||
- value
|
||||
destination:
|
||||
plugin: entity:comment
|
||||
default_bundle: comment
|
||||
migration_dependencies:
|
||||
required:
|
||||
- agaric_blog
|
||||
- agaric_page
|
|
@ -0,0 +1,45 @@
|
|||
id: agaric_file
|
||||
migration_group: agaric
|
||||
label: Public files
|
||||
source:
|
||||
plugin: d7_file
|
||||
scheme: public
|
||||
process:
|
||||
filename: filename
|
||||
source_full_path:
|
||||
-
|
||||
plugin: concat
|
||||
delimiter: /
|
||||
source:
|
||||
- filepath
|
||||
-
|
||||
plugin: str_replace
|
||||
search: 'sites/default/files/'
|
||||
# The old files must be located at this path:
|
||||
replace: 'sites/default/import/'
|
||||
-
|
||||
plugin: urlencode
|
||||
uri:
|
||||
plugin: file_copy
|
||||
source:
|
||||
- '@source_full_path'
|
||||
- uri
|
||||
filemime: filemime
|
||||
status: status
|
||||
created: timestamp
|
||||
changed: timestamp
|
||||
uid:
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_user
|
||||
source: uid
|
||||
no_stub: true
|
||||
-
|
||||
# If the user id does not exists then migrate it as anonymous.
|
||||
plugin: default_value
|
||||
default_value: 0
|
||||
destination:
|
||||
plugin: entity:file
|
||||
migration_dependencies:
|
||||
required:
|
||||
- agaric_user
|
|
@ -16,14 +16,14 @@ process:
|
|||
default_value: "und"
|
||||
title: title
|
||||
uid:
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_user
|
||||
source: node_uid
|
||||
no_stub: true
|
||||
-
|
||||
plugin: skip_on_empty
|
||||
method: row
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_user
|
||||
source: node_uid
|
||||
no_stub: true
|
||||
-
|
||||
plugin: skip_on_empty
|
||||
method: row
|
||||
paragraph_body:
|
||||
plugin: migration
|
||||
migration: agaric_page_paragraph
|
||||
|
@ -31,10 +31,31 @@ process:
|
|||
field_body_paragraph:
|
||||
plugin: iterator
|
||||
source:
|
||||
- '@paragraph_body'
|
||||
- '@paragraph_body'
|
||||
process:
|
||||
target_id: '0'
|
||||
target_revision_id: '1'
|
||||
field_image:
|
||||
-
|
||||
plugin: iterator
|
||||
source: field_image
|
||||
process:
|
||||
target_id:
|
||||
plugin: migration_lookup
|
||||
migration: agaric_file
|
||||
source: fid
|
||||
alt: alt
|
||||
title: title
|
||||
height: height
|
||||
width: width
|
||||
field_file:
|
||||
-
|
||||
plugin: iterator
|
||||
source: field_file
|
||||
process:
|
||||
target_id:
|
||||
plugin: migration_lookup
|
||||
source: fid
|
||||
status: status
|
||||
created: created
|
||||
changed: changed
|
||||
|
@ -45,5 +66,5 @@ process:
|
|||
revision_timestamp: timestamp
|
||||
migration_dependencies:
|
||||
required:
|
||||
- agaric_user
|
||||
- agaric_page_paragraph
|
||||
- agaric_user
|
||||
- agaric_page_paragraph
|
|
@ -15,6 +15,7 @@ process:
|
|||
status: status
|
||||
timezone: timezone
|
||||
init: init
|
||||
field_bio: field_bio
|
||||
roles:
|
||||
-
|
||||
plugin: static_map
|
||||
|
@ -30,3 +31,29 @@ process:
|
|||
plugin: role_generate
|
||||
entity_type: user_role
|
||||
value_key: id
|
||||
field_gpg_public_key/target_id:
|
||||
-
|
||||
plugin: extract
|
||||
source: field_gpg_public_key
|
||||
default: ''
|
||||
index:
|
||||
- 0
|
||||
- fid
|
||||
-
|
||||
plugin: skip_on_empty
|
||||
method: process
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_file
|
||||
user_picture:
|
||||
-
|
||||
plugin: default_value
|
||||
source: picture
|
||||
default_value: null
|
||||
-
|
||||
plugin: migration_lookup
|
||||
migration: agaric_file
|
||||
migration_dependencies:
|
||||
optional:
|
||||
- agaric_file
|
||||
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\agaric_migration\Plugin\migrate\process;
|
||||
|
||||
use Drupal\migrate\MigrateSkipProcessException;
|
||||
use Drupal\migrate\Plugin\migrate\process\MigrationLookup;
|
||||
|
||||
/**
|
||||
* Looks up the value of a property based on a previous migration.
|
||||
*
|
||||
* This plugin just alters the MigrationLookup::skipOnEmpty to consider the
|
||||
* number zero as a valid ID.
|
||||
*
|
||||
* @MigrateProcessPlugin(
|
||||
* id = "migration_lookup_with_zero"
|
||||
* )
|
||||
*/
|
||||
class MigrationLookupWithZero extends MigrationLookup {
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function skipOnEmpty(array $value) {
|
||||
if (!array_filter($value, [$this, 'isNotEmpty'])) {
|
||||
throw new MigrateSkipProcessException();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines if the value is not empty.
|
||||
*
|
||||
* The only values considered empty are: NULL, FALSE and an empty string.
|
||||
*
|
||||
* @param string $value
|
||||
* The value to test if is empty.
|
||||
*
|
||||
* @return bool
|
||||
* Return true if the value is not empty.
|
||||
*/
|
||||
protected function isNotEmpty($value) {
|
||||
return ($value !== NULL && $value !== FALSE && $value !== '');
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in a new issue