O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Plone migrations
using plone.restapi
Andreas Jung

Plone Conference 

November 2018, Tokyo
Requirements & goals
• Migration of about 10 Plone sites to Plone 5.1

• 3 business sites

• 7 project sites

• Plone 4.1 ...
Why not the standard 

Plone migration?
• We wanted to start fresh → in-place migration not applicable

• Transmogrifier: t...
Migration setup
Plone 5
plone.restapi
Provisioning
API
Target systemSource systems
Plone 4.1/4.3
migrate.py
site-specific

...
Own provisioning API
• few supplementary functions to plone.api:

• provision new Plone site with add-ons 

• preserving/r...
Migration process
create_site()
provision_site()
migrate_users()
migrate_groups()
for folder in all_folders:
content_objs ...
Lessons learned
• migrations using plone.api over HTTP are very stable and reasonable fast
(60-90 minutes for largest site...
Próximos SlideShares
Carregando em…5
×

de

Plone migrations using plone.restapi Slide 1 Plone migrations using plone.restapi Slide 2 Plone migrations using plone.restapi Slide 3 Plone migrations using plone.restapi Slide 4 Plone migrations using plone.restapi Slide 5 Plone migrations using plone.restapi Slide 6 Plone migrations using plone.restapi Slide 7
Próximos SlideShares
What to Upload to SlideShare
Avançar
Transfira para ler offline e ver em ecrã inteiro.

0 gostaram

Compartilhar

Baixar para ler offline

Plone migrations using plone.restapi

Baixar para ler offline

Plone 4 to Plone 5 migrations using plone.restapi.
Plone Conference 2018, Toyko.

Livros relacionados

Gratuito durante 30 dias do Scribd

Ver tudo
  • Seja a primeira pessoa a gostar disto

Plone migrations using plone.restapi

  1. 1. Plone migrations using plone.restapi Andreas Jung Plone Conference 
 November 2018, Tokyo
  2. 2. Requirements & goals • Migration of about 10 Plone sites to Plone 5.1 • 3 business sites • 7 project sites • Plone 4.1 and 4.3 • consistent new look & feel • consistent common code base • reduced number of dependencies 
 (old: 15-20 packages, new: 4 packages) • consistent deployment
  3. 3. Why not the standard 
 Plone migration? • We wanted to start fresh → in-place migration not applicable • Transmogrifier: too much „magic“ under the hood • every source site slightly different • massive consolidation of Archetypes content-types and packages to a few new Dexterity types • individual restructuring and consolidation of sites • consolidation of security and access management • incremental and partial site migrations (YAML-based configuration)
  4. 4. Migration setup Plone 5 plone.restapi Provisioning API Target systemSource systems Plone 4.1/4.3 migrate.py site-specific
 YAML config HTTP
  5. 5. Own provisioning API • few supplementary functions to plone.api: • provision new Plone site with add-ons • preserving/restoring old UIDs of source system • handling of navigation root • default pages • customer-specific migration logic • implemented as browser views
  6. 6. Migration process create_site() provision_site() migrate_users() migrate_groups() for folder in all_folders: content_objs = find_all_objs(folder) for obj in content_objs: target_pt = determine_target_pt(obj) target_path = determine_target_path(obj) obj_data = extract_data(obj) ensure_folder_hierarchy(target_path) # p.api, prov.api create_content(target_path, target_type, obj_data) # p.api set_workflow() set_local_roles() restore_uids(folder) # provisioning.api switch_to_resolveuid(folder) # provisioning.api commit()
  7. 7. Lessons learned • migrations using plone.api over HTTP are very stable and reasonable fast (60-90 minutes for largest sites) • all structures and content could be automatically migrated (80-90%) • 10-20% manual work • default pages • fixing content • collections • replacing various collages • easily adoptable to other migration projects

Plone 4 to Plone 5 migrations using plone.restapi. Plone Conference 2018, Toyko.

Vistos

Vistos totais

550

No Slideshare

0

De incorporações

0

Número de incorporações

153

Ações

Baixados

1

Compartilhados

0

Comentários

0

Curtir

0

×