#265 FreeIPA 4.5 breaks Ipsilion installation
Closed: Fixed Opened by cheimes.

FreeIPA 4.5 is going to break Ipsilon's FreeIPA integration. I tested Ipsilon 2.0 with latest FreeIPA dev version on Fedora 25:

# rpm -qa ipsilon freeipa-server
freeipa-server-4.4.90.dev201702231801+gite2d1b21-0.fc25.x86_64                                                                                                                                                                              
ipsilon-2.0.2-2.fc25.noarch 

Install log

[2017-02-23 19:05:20,235] Handling sessions datastore
[2017-02-23 19:05:20,235] Not SQL-based, skipping
[2017-02-23 19:05:20,235] Handling default datastore UserStore
[2017-02-23 19:05:20,235] Considering datastore UserStore
[2017-02-23 19:05:20,346] Initializing schema for UserStore
[2017-02-23 19:05:20,590] Handling default datastore TranStore
[2017-02-23 19:05:20,590] Considering datastore TranStore
[2017-02-23 19:05:20,696] Initializing schema for TranStore
[2017-02-23 19:05:20,910] Configuring environment helpers
[2017-02-23 19:05:21,023] IPA tools installation found: ['module' object has no attribute 'init_config']
[2017-02-23 19:05:21,024] No IPA installation found!
[2017-02-23 19:05:21,024] No IPA installation found!
Traceback (most recent call last):
  File "/sbin/ipsilon-server-install", line 522, in <module>
    install(fplugins, opts)
  File "/sbin/ipsilon-server-install", line 192, in install
    if plugin.configure_server(args, plugin_changes) == False:
  File "/usr/lib/python2.7/site-packages/ipsilon/helpers/ipa.py", line 176, in configure_server
    self.conf_init(opts)
  File "/usr/lib/python2.7/site-packages/ipsilon/helpers/ipa.py", line 68, in conf_init
    raise Exception('No IPA installation found!')
Exception: No IPA installation found!
[2017-02-23 19:05:21,024] Installation aborted.

It looks like this snippet does no longer work as expected because the feature was removed in https://github.com/freeipa/freeipa/commit/7b966e8577fdb56f069cf26a6ab4d6c77b8743b9

        # Get config vars from ipa file
        try:
            from ipapython import config as ipaconfig
            ipaconfig.init_config()
            self.realm = ipaconfig.config.get_realm()
            self.domain = ipaconfig.config.get_domain()
            self.server = ipaconfig.config.get_server()
        except Exception, e:  # pylint: disable=broad-except
            logger.info('IPA tools installation found: [%s]', e)

I created https://fedorahosted.org/freeipa/ticket/6707 to track the issue in FreeIPA.

Thanks for the report here and at freeipa!
I'm planning to wait to see what the freeipa folks say before making any commits to fix this.

Metadata Update from @puiterwijk:
- Custom field component adjusted to Documentation
- Custom field type adjusted to defect
- Custom field version adjusted to Development

We decided to re-add a simplified version of IPAConfig. PR is WIP, https://github.com/freeipa/freeipa/pull/515

This has been fixed in IPA upstream before the 4.5 release.
Thanks @cheimes for taking care of that!

Metadata Update from @puiterwijk:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

Metadata