12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- # This migration demonstrates importing from a monolithic JSON file.
- id: wine_role_json
- label: JSON feed of roles (positions)
- migration_group: wine
- source:
- # We use the JSON source plugin.
- plugin: url
- data_fetcher_plugin: http
- data_parser_plugin: json
- # The data_parser normally limits the fields passed on to the source plugin
- # to fields configured to be used as part of the migration. To support more
- # dynamic migrations, the JSON data parser supports including the original
- # data for the current row. Simply include the 'include_raw_data' flag set
- # to `true` to enable this. This option is disabled by default to minimize
- # memory footprint for migrations that do not need this capability.
- # include_raw_data: true
- # Normally, this is one or more fully-qualified URLs or file paths. Because
- # we can't hardcode your local URL, we provide a relative path here which
- # hook_install() will rewrite to a full URL for the current site.
- urls: /migrate_example_advanced_position?_format=json
- # An xpath-like selector corresponding to the items to be imported.
- item_selector: position
- # Under 'fields', we list the data items to be imported. The first level keys
- # are the source field names we want to populate (the names to be used as
- # sources in the process configuration below). For each field we're importing,
- # we provide a label (optional - this is for display in migration tools) and
- # an xpath for retrieving that value. It's important to note that this xpath
- # is relative to the elements retrieved by item_selector.
- fields:
- -
- name: machine_name
- label: 'Unique position identifier'
- selector: sourceid
- -
- name: friendly_name
- label: 'Position name'
- selector: name
- # Under 'ids', we identify source fields populated above which will uniquely
- # identify each imported item. The 'type' makes sure the migration map table
- # uses the proper schema type for stored the IDs.
- ids:
- machine_name:
- type: string
- process:
- # Note that the source field names here (machine_name and friendly_name) were
- # defined by the 'fields' configuration for the source plugin above.
- id: machine_name
- label: friendly_name
- destination:
- plugin: entity:user_role
- migration_dependencies: {}
- dependencies:
- enforced:
- module:
- - migrate_example_advanced
|