blob: 6454a4f4ef956a1ef545b82a649ebf26ef6edd7b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#
# Copyright (C) 2016 FreeIPA Contributors see COPYING for license
#
from . import compat
from . import schema
from ipaclient.plugins.rpcclient import rpcclient
def get_package(api):
if api.env.in_tree:
from ipaserver import plugins
else:
client = rpcclient(api)
client.finalize()
try:
plugins = schema.get_package(api, client)
except schema.NotAvailable:
plugins = compat.get_package(api, client)
finally:
if client.isconnected():
client.disconnect()
return plugins
|