...
Les groupes PAGS sont maintenant stockés en base de données, on peut les importer via une commande ant data-import, mais il faut pour ce faire disposer d'un fichier XML PAGS par groupe.
Cf la doc Jasig derrière le lien suivant https://wiki.jasig.org/pages/viewpage.action?pageId=65274412 , la structure du xml a de plus quelque peu changé, il faut donc retravailler vos blocs xml en plus de les découper.
Si vous avez beaucoup de groupes, il est intéressant de procéder à cette restructuration par scripts - comme ici :
| Bloc de code | ||
|---|---|---|
| ||
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import libxml2, sys
doc = libxml2.parseFile("PAGSGroupStoreConfig.xml")
mapId2Name = {
'desktop_device_access':'Desktop Device Access',
'mobile_device_access':'Mobile Device Access',
'respondr_theme_users':'Respondr Theme Users'
}
for n in doc.xpathEval("//group"):
mapId2Name[n.xpathEval("group-key")[0].getContent()] = n.xpathEval("group-name")[0].getContent()
for n in doc.xpathEval("//group"):
n.setName('pags-group')
n.setProp('script', 'classpath://org/jasig/portal/io/import-pags-group_v4-1.crn')
for n in doc.xpathEval("//member-key"):
n.setName('member-name')
n.setContent(mapId2Name[n.getContent()])
for n in doc.xpathEval("//group-name"):
n.setName('name')
for n in doc.xpathEval("//group-description"):
n.setName('description')
for n in doc.xpathEval("//group-key"):
n.unlinkNode()
for group in doc.xpathEval("//pags-group"):
name = group.xpathEval("name")[0].getContent()
f = open( name + '.pags-group.xml','w')
group.saveTo(f)
|
TODO
Puis on réimporte les groupes PAGS ainsi :
...