Split ipa-client/ into ipaclient/ (Python library) and client/ (C, scripts)
Make ipaclient a Python library like ipapython, ipalib, etc.
Use setup.py instead of autotools for installing it.
Move C client tools, Python scripts, and man pages, to client/.
Remove old, empty or outdated, boilerplate files (NEWS, README, AUTHORS).
Remove /setup-client.py (ipalib/setup.py should be used instead).
Update Makefiles and the spec file accordingly.
https://fedorahosted.org/freeipa/ticket/5638
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2016-01-14 07:15:49 -06:00
|
|
|
#!/usr/bin/python2
|
|
|
|
# Copyright (C) 2007 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, either version 3 of the License, or
|
|
|
|
# (at your option) any later version.
|
|
|
|
#
|
|
|
|
# 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, see <http://www.gnu.org/licenses/>.
|
|
|
|
#
|
|
|
|
|
|
|
|
"""FreeIPA client library
|
|
|
|
|
|
|
|
FreeIPA is a server for identity, policy, and audit.
|
|
|
|
"""
|
|
|
|
|
|
|
|
DOCLINES = __doc__.split("\n")
|
|
|
|
|
|
|
|
import os
|
|
|
|
import sys
|
|
|
|
|
|
|
|
CLASSIFIERS = """\
|
|
|
|
Intended Audience :: System Environment/Base
|
|
|
|
License :: GPL
|
|
|
|
Programming Language :: Python
|
|
|
|
Operating System :: POSIX
|
|
|
|
Operating System :: Unix
|
|
|
|
"""
|
|
|
|
|
|
|
|
# BEFORE importing distutils, remove MANIFEST. distutils doesn't properly
|
|
|
|
# update it when the contents of directories change.
|
|
|
|
if os.path.exists('MANIFEST'): os.remove('MANIFEST')
|
|
|
|
|
|
|
|
def setup_package():
|
|
|
|
|
|
|
|
from distutils.core import setup
|
|
|
|
|
|
|
|
old_path = os.getcwd()
|
|
|
|
local_path = os.path.dirname(os.path.abspath(sys.argv[0]))
|
|
|
|
os.chdir(local_path)
|
|
|
|
sys.path.insert(0,local_path)
|
|
|
|
|
|
|
|
try:
|
|
|
|
setup(
|
|
|
|
name = "ipaclient",
|
|
|
|
version = "__VERSION__",
|
|
|
|
license = "GPL",
|
|
|
|
url = "http://www.freeipa.org/",
|
|
|
|
description = DOCLINES[0],
|
|
|
|
long_description = "\n".join(DOCLINES[2:]),
|
|
|
|
download_url = "http://www.freeipa.org/page/Downloads",
|
|
|
|
classifiers=[line for line in CLASSIFIERS.split('\n') if line],
|
|
|
|
platforms = ["Linux", "Solaris", "Unix"],
|
|
|
|
package_dir = {'ipaclient': ''},
|
2016-03-08 05:37:40 -06:00
|
|
|
packages = [
|
|
|
|
"ipaclient",
|
|
|
|
"ipaclient.plugins",
|
2016-06-02 03:12:26 -05:00
|
|
|
"ipaclient.remote_plugins",
|
2016-03-08 05:37:40 -06:00
|
|
|
],
|
2016-05-13 01:40:53 -05:00
|
|
|
scripts=['../ipa'],
|
|
|
|
data_files = [('share/man/man1', ["../ipa.1"])],
|
Split ipa-client/ into ipaclient/ (Python library) and client/ (C, scripts)
Make ipaclient a Python library like ipapython, ipalib, etc.
Use setup.py instead of autotools for installing it.
Move C client tools, Python scripts, and man pages, to client/.
Remove old, empty or outdated, boilerplate files (NEWS, README, AUTHORS).
Remove /setup-client.py (ipalib/setup.py should be used instead).
Update Makefiles and the spec file accordingly.
https://fedorahosted.org/freeipa/ticket/5638
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2016-01-14 07:15:49 -06:00
|
|
|
)
|
|
|
|
finally:
|
|
|
|
del sys.path[0]
|
|
|
|
os.chdir(old_path)
|
|
|
|
return
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
setup_package()
|