misc/scripts/drop_external_entities.py
author Alexandre Fayolle <alexandre.fayolle@logilab.fr>
Tue, 22 Feb 2011 21:30:32 +0100
branchstable
changeset 7029 bae4d11a104b
parent 6636 dbc9cce53c11
child 7398 26695dd703d8
permissions -rw-r--r--
add some tips for users who want to bind to an AD server adjust the level of the different configuration parameters so that the condfiguration becomes usable outside Logilab

from cubicweb import UnknownEid
source, = __args__

sql("DELETE FROM entities WHERE type='Int'")

ecnx = session.pool.connection(source)
for e in rql('Any X WHERE X cw_source S, S name %(name)s', {'name': source}).entities():
    meta = e.cw_metainformation()
    assert meta['source']['uri'] == source
    try:
        suri = ecnx.describe(meta['extid'])[1]
    except UnknownEid:
        print 'cant describe', e.__regid__, e.eid, meta
        continue
    if suri != 'system':
        try:
            print 'deleting', e.__regid__, e.eid, suri, e.dc_title().encode('utf8')
            repo.delete_info(session, e, suri, meta['extid'], scleanup=True)
        except UnknownEid:
            print '  cant delete', e.__regid__, e.eid, meta


commit()