Pages enfant
  • Migration depuis esup-2.6-DLM

En cours de rédaction

Utilisation de l'outil d'import-export de uPortal

Préalable

Faire un Dump de la base 2.6 et exporter vers une nouvelle base 2.6 de travail (nommée ci-après base-2.6-travail)

Installation/configuration de l'outil d'import-export de base 2.6

Projet téléchargé depuis : https://www.ja-sig.org/svn/uPortal/branches/rel-2-6-export/
Configurer :

  • build.properties
  • properties/rdbm.properties => Pointer sur la base base-2.6-travail
  • properties/export.properties :
export_layout_format=3.0
  • properties/dlm.xml => reprendre le fichier dlm.xml de la version 2.6
  • properties/groups/PAGSGroupStoreConfig.xml => reprendre le fichier de la version 2.6
  • properties/groups/compositeGroupServices.xml => reprendre le fichier de la version 2.6

Préparation de l'export

Sur la base base-2.6-travail :

  • supprimer groupes inutiles :
    delete from up_group_membership where member_service='local' and group_id in
    (select group_id from up_group where creator_id='edu.columbia.ais.portal.channels.announcements.CAnnouncements')
    
    delete from up_group where creator_id='edu.columbia.ais.portal.channels.announcements.CAnnouncements'
    
  • nettoyage layouts (pour ne pas exporter tous les layouts utilisateurs) :
    • conserver uniquement les utilisateurs "layout" : 
      delete from up_user where user_id>100 and user_name not like '%-lo'
      
    • ou : configurer export.properties  :
      included_users_file=<liste des utilisateurs à exporter
      
  • nettoyage canaux et layouts en fonction des erreurs d'export (cf ant export plus bas), exemples :
  • canal plus utilisé mais conservé en base avec droits pour un groupe supprimé
  • A compléter
    Modifier source/org/jasig/portal/io/export-layout_v3-0.crn :
  • ligne 84 remplacer :
     AND type IS NULL
    
    par
    AND type IS NOT NULL
    
    sinon les canaux ne pas référencés dans les exports de layouts-fragments
  • Créer un répertoire "export"
  • Configurer import-export.xml :
    <property name="dir" value="export"/>
    

Export

Configurer import-export.xml :

Lancer export  avec les valeurs sucessives dans import-export.xml :

  • all-groups
  • all-memberships => pour conserver la hiérarchie entre groupes locaux "de base" et groupes pags rattachés
  • all-channels
  • all-layouts
  • all-users

ou

  • all et faire le ménage

Création des répertoires : 

export   
    fragment-layout => utilisateurs propriétaires (-lo)   
    layout => layouts personnalisés par l'utilisateur&nbsp;&nbsp;&nbsp;
    group_membership&nbsp;&nbsp;&nbsp;
    channel&nbsp;&nbsp;&nbsp;
    user => uniquement utilisateurs propriétaires de profils

Installation locale

Téléchargement : https://sourcesup.cru.fr/frs/download.php/2875/esup-3.1.2-esup-0.5-RC1.tar.gz

Configuration config.properties

copie dans esup-uPortal-3.1/custom/uPortal/uportal-impl/src/main/resources/properties/db/mini  des exports de la base 2.6 :

  • export/channel
  • export/fragment-layout
  • export/group_membership
  • export/user

dans esup-uPortal-3.1/custom/uPortal/uportal-impl/src/main/resources/properties :

  • modification dlm.xml (copier/coller contenu de l'ancien)
  • copier update/uPortal/uportal-impl/src/main/resources/properties/contexts/personDirectoryContext.xml et adapter les correspondances attributs ldap / attributs uPortal dans le bean uPortalLdapAttributeSource
  • modification groups/PAGSGroupStoreConfig.xml
  • nettoyage/adaptation des exports de la 2.6 (db/mini) :
    • Recopier all-lo.fragment-layout, admin-lo.fragment-layout et guest-lo.fragment-layout de update et les modifier
    • Enlever groupes et canaux "systèmes" (permissionsmanager, missing-properties, etc. ) ou plus utilisés
    • recopier groupe Anonymes.group-membership de update et le modifier
    • recopier Administrateurs_Portail.group_membership de update et le modifier
    • recopier groupe Proprietaires_de_fragment.group_membership de update et le modifier (ajouter les utilisateurs en "-lo")
    • recopier groupe Toutes_les_categories.group_membership de update et le modifier (ajouter les catégories de groupes)
    • fragment-layout : Vérifier le profile :
<profile name="HTML browser profile">
    <description>A sample profile for common web browsers</description>
    <structure name="DLM Tabs and columns"/>
    <theme name="DLM XHTML"/>
</profile>
    • Sinon, remplacer le profil :
  sed -e 's/<structure name="null"/<structure name="DLM Tabs and columns"/' -i *
  sed -e 's/<theme name="null"/<theme name="DLM XHTML"/' -i *
    • user : remplacer l'utilisateur par défaut :
  sed -e 's/<default-user>demo/<default-user>defaultTemplateUser/' -i user/*
    • channel : pour les portlets, remplacer :
   <parameters>
...
       <parameter>
            <name>portletDefinitionId</name>
            <value>portletContext.portletName</value>
            <description>The syntax of the portletDefinitionId is [portlet-context-name].[portlet-name]</description>
            <ovrd>N</ovrd>
        </parameter>

      <parameter>
            <name>PORTLET.context</name>
            <value>context</value>
            <description>The "context" Portlet preference</description>
            <ovrd>N</ovrd>
      </parameter>
...
  </parameters>

par :

  <parameters>
...
    <parameter>
      <name>portletApplicationId</name>
      <value>/portletContext</value>
      <description/>
      <ovrd>N</ovrd>
    </parameter>
    <parameter>
      <name>portletName</name>
      <value>portletName</value>
      <description/>
      <ovrd>N</ovrd>
    </parameter>
  </parameters>
  <portletPreferences>
    <portletPreference>
      <name>context</name>
      <values>
	<value>default</value>
      </values>
    </portletPreference>
  </portletPreferences>

to continued...

  • Aucune étiquette