mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-23 07:33:27 -06:00
11: Added submodules needed to triger the plugin loading, etc., so I can start work on the cli demo
This commit is contained in:
parent
7acf12e988
commit
700d58ac1e
@ -212,6 +212,7 @@ class API(object):
|
||||
|
||||
def finalize(self):
|
||||
cmd_d = {}
|
||||
cmd_l = {}
|
||||
for obj in self.__obj_d.values():
|
||||
for cmd in obj.commands():
|
||||
assert cmd.full_name not in cmd_d
|
||||
|
@ -26,29 +26,23 @@ import base
|
||||
class add(base.Command):
|
||||
pass
|
||||
|
||||
|
||||
class get(base.Command):
|
||||
class find(base.Command):
|
||||
pass
|
||||
|
||||
|
||||
class edit(base.Command):
|
||||
pass
|
||||
|
||||
|
||||
class delete(base.Command):
|
||||
pass
|
||||
|
||||
|
||||
class find(base.Command):
|
||||
pass
|
||||
|
||||
|
||||
class CrudLike(base.Object):
|
||||
def get_commands(self):
|
||||
return [
|
||||
add,
|
||||
get,
|
||||
find,
|
||||
edit,
|
||||
delete,
|
||||
find,
|
||||
]
|
||||
|
39
ipalib/plugins.py
Normal file
39
ipalib/plugins.py
Normal file
@ -0,0 +1,39 @@
|
||||
# Authors:
|
||||
# Jason Gerard DeRose <jderose@redhat.com>
|
||||
#
|
||||
# Copyright (C) 2008 Red Hat
|
||||
# see file 'COPYING' for use and warranty information
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; version 2 only
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
"""
|
||||
Some example plugins.
|
||||
"""
|
||||
|
||||
import crud
|
||||
from run import api
|
||||
|
||||
class user(crud.CrudLike):
|
||||
pass
|
||||
api.register_object(user)
|
||||
|
||||
|
||||
class group(crud.CrudLike):
|
||||
pass
|
||||
api.register_object(group)
|
||||
|
||||
|
||||
class service(crud.CrudLike):
|
||||
pass
|
||||
api.register_object(service)
|
28
ipalib/run.py
Normal file
28
ipalib/run.py
Normal file
@ -0,0 +1,28 @@
|
||||
# Authors:
|
||||
# Jason Gerard DeRose <jderose@redhat.com>
|
||||
#
|
||||
# Copyright (C) 2008 Red Hat
|
||||
# see file 'COPYING' for use and warranty information
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; version 2 only
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
"""
|
||||
Standard run-time instances of importard classes. This is where plugins
|
||||
should access the registration API.
|
||||
"""
|
||||
|
||||
import base
|
||||
|
||||
# The standard API instance
|
||||
api = base.API()
|
31
ipalib/startup.py
Normal file
31
ipalib/startup.py
Normal file
@ -0,0 +1,31 @@
|
||||
# Authors:
|
||||
# Jason Gerard DeRose <jderose@redhat.com>
|
||||
#
|
||||
# Copyright (C) 2008 Red Hat
|
||||
# see file 'COPYING' for use and warranty information
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; version 2 only
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
"""
|
||||
Importing this module causes the plugins to be loaded and the API to be
|
||||
generated.
|
||||
|
||||
This is not in __init__.py so that imported other IPA modules doesn't cause
|
||||
unnecessary side effects (needed for unit tests, among other things).
|
||||
"""
|
||||
|
||||
from run import api
|
||||
import plugins
|
||||
|
||||
api.finalize()
|
Loading…
Reference in New Issue
Block a user