← Back to team overview

freeipa team mailing list archive

[Bug 1946244] [NEW] When installing/uninstalling with realmd, uninstalling crashes with ScriptError

 

Public bug reported:

ProblemType: Crash
DistroRelease: Ubuntu 21.04
PackageVersion: python3-ipaclient 4.8.6-1ubuntu5
SourcePackage: freeipa
Architecture: amd64

Joining a FreeIPA domain with plain ipa-client-install works well:

# ipa-client-install -p admin --password=SECRET --no-ntp
[...]
The ipa-client-install command was successful

And leaving it again with "ipa-client-install --uninstall" also works.

However, when doing this through realmd (which configures some
additional useful stuff), it causes a crash:

# realm join
Password for admin: 

This works fine:

# realm list
cockpit.lan
  type: kerberos
  realm-name: COCKPIT.LAN
  domain-name: cockpit.lan
  configured: kerberos-member
  server-software: ipa
  client-software: sssd
  required-package: freeipa-client
  required-package: sssd-tools
  required-package: sssd
  required-package: libnss-sss
  required-package: libpam-sss
  login-formats: %U@xxxxxxxxxxx
  login-policy: allow-realm-logins

But leaving fails:

# realm leave
See: journalctl REALMD_OPERATION=r152.3671
realm: Couldn't leave realm: Running ipa-client-install failed
root@x0:~# echo $?
1


The crash from /var/log/ipaclient-uninstall.log:

2021-10-06T15:48:22Z INFO Client uninstall complete.
2021-10-06T15:48:22Z DEBUG   File "/usr/lib/python3/dist-packages/ipapython/admintool.py", line 179, in execute
    return_value = self.run()
  File "/usr/lib/python3/dist-packages/ipapython/install/cli.py", line 340, in run
    return cfgr.run()
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 360, in run
    return self.execute()
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 386, in execute
    for rval in self._executor():
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 431, in __runner
    exc_handler(exc_info)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 460, in _handle_execute_exception
    self._handle_exception(exc_info)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 450, in _handle_exception
    six.reraise(*exc_info)
  File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 421, in __runner
    step()
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 418, in <lambda>
    step = lambda: next(self.__gen)
  File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 81, in run_generator_with_yield_from
    six.reraise(*exc_info)
  File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 59, in run_generator_with_yield_from
    value = gen.send(prev_value)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 655, in _configure
    next(executor)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 431, in __runner
    exc_handler(exc_info)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 460, in _handle_execute_exception
    self._handle_exception(exc_info)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 518, in _handle_exception
    self.__parent._handle_exception(exc_info)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 450, in _handle_exception
    six.reraise(*exc_info)
  File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 515, in _handle_exception
    super(ComponentBase, self)._handle_exception(exc_info)
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 450, in _handle_exception
    six.reraise(*exc_info)
  File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 421, in __runner
    step()
  File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 418, in <lambda>
    step = lambda: next(self.__gen)
  File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 81, in run_generator_with_yield_from
    six.reraise(*exc_info)
  File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 59, in run_generator_with_yield_from
    value = gen.send(prev_value)
  File "/usr/lib/python3/dist-packages/ipapython/install/common.py", line 73, in _uninstall
    for unused in self._uninstaller(self.parent):
  File "/usr/lib/python3/dist-packages/ipaclient/install/client.py", line 3825, in main
    uninstall(self)
  File "/usr/lib/python3/dist-packages/ipaclient/install/client.py", line 3528, in uninstall
    raise ScriptError(rval=rv)

2021-10-06T15:48:22Z DEBUG The ipa-client-install command failed,
exception: ScriptError:


Ubuntu 20.04 LTS is affected the same way. Note that this crash does
*not* happen on Debian 10 or testing (nor in Fedora, RHEL, or CentOS).
We found this through Cockpit's tests, and it only happens on Ubuntu.

** Affects: freeipa (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: freeipa (Ubuntu Bionic)
     Importance: Undecided
         Status: New

** Affects: freeipa (Ubuntu Hirsute)
     Importance: Undecided
         Status: New

** Attachment added: "ipaclient-uninstall.log"
   https://bugs.launchpad.net/bugs/1946244/+attachment/5531109/+files/ipaclient-uninstall.log

-- 
You received this bug notification because you are a member of FreeIPA,
which is subscribed to freeipa in Ubuntu.
https://bugs.launchpad.net/bugs/1946244

Title:
  When installing/uninstalling with realmd, uninstalling crashes with
  ScriptError

Status in freeipa package in Ubuntu:
  New
Status in freeipa source package in Bionic:
  New
Status in freeipa source package in Hirsute:
  New

Bug description:
  ProblemType: Crash
  DistroRelease: Ubuntu 21.04
  PackageVersion: python3-ipaclient 4.8.6-1ubuntu5
  SourcePackage: freeipa
  Architecture: amd64

  Joining a FreeIPA domain with plain ipa-client-install works well:

  # ipa-client-install -p admin --password=SECRET --no-ntp
  [...]
  The ipa-client-install command was successful

  And leaving it again with "ipa-client-install --uninstall" also works.

  However, when doing this through realmd (which configures some
  additional useful stuff), it causes a crash:

  # realm join
  Password for admin: 

  This works fine:

  # realm list
  cockpit.lan
    type: kerberos
    realm-name: COCKPIT.LAN
    domain-name: cockpit.lan
    configured: kerberos-member
    server-software: ipa
    client-software: sssd
    required-package: freeipa-client
    required-package: sssd-tools
    required-package: sssd
    required-package: libnss-sss
    required-package: libpam-sss
    login-formats: %U@xxxxxxxxxxx
    login-policy: allow-realm-logins

  But leaving fails:

  # realm leave
  See: journalctl REALMD_OPERATION=r152.3671
  realm: Couldn't leave realm: Running ipa-client-install failed
  root@x0:~# echo $?
  1

  
  The crash from /var/log/ipaclient-uninstall.log:

  2021-10-06T15:48:22Z INFO Client uninstall complete.
  2021-10-06T15:48:22Z DEBUG   File "/usr/lib/python3/dist-packages/ipapython/admintool.py", line 179, in execute
      return_value = self.run()
    File "/usr/lib/python3/dist-packages/ipapython/install/cli.py", line 340, in run
      return cfgr.run()
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 360, in run
      return self.execute()
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 386, in execute
      for rval in self._executor():
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 431, in __runner
      exc_handler(exc_info)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 460, in _handle_execute_exception
      self._handle_exception(exc_info)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 450, in _handle_exception
      six.reraise(*exc_info)
    File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
      raise value
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 421, in __runner
      step()
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 418, in <lambda>
      step = lambda: next(self.__gen)
    File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 81, in run_generator_with_yield_from
      six.reraise(*exc_info)
    File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
      raise value
    File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 59, in run_generator_with_yield_from
      value = gen.send(prev_value)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 655, in _configure
      next(executor)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 431, in __runner
      exc_handler(exc_info)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 460, in _handle_execute_exception
      self._handle_exception(exc_info)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 518, in _handle_exception
      self.__parent._handle_exception(exc_info)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 450, in _handle_exception
      six.reraise(*exc_info)
    File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
      raise value
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 515, in _handle_exception
      super(ComponentBase, self)._handle_exception(exc_info)
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 450, in _handle_exception
      six.reraise(*exc_info)
    File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
      raise value
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 421, in __runner
      step()
    File "/usr/lib/python3/dist-packages/ipapython/install/core.py", line 418, in <lambda>
      step = lambda: next(self.__gen)
    File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 81, in run_generator_with_yield_from
      six.reraise(*exc_info)
    File "/usr/lib/python3/dist-packages/six.py", line 703, in reraise
      raise value
    File "/usr/lib/python3/dist-packages/ipapython/install/util.py", line 59, in run_generator_with_yield_from
      value = gen.send(prev_value)
    File "/usr/lib/python3/dist-packages/ipapython/install/common.py", line 73, in _uninstall
      for unused in self._uninstaller(self.parent):
    File "/usr/lib/python3/dist-packages/ipaclient/install/client.py", line 3825, in main
      uninstall(self)
    File "/usr/lib/python3/dist-packages/ipaclient/install/client.py", line 3528, in uninstall
      raise ScriptError(rval=rv)

  2021-10-06T15:48:22Z DEBUG The ipa-client-install command failed,
  exception: ScriptError:


  Ubuntu 20.04 LTS is affected the same way. Note that this crash does
  *not* happen on Debian 10 or testing (nor in Fedora, RHEL, or CentOS).
  We found this through Cockpit's tests, and it only happens on Ubuntu.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/freeipa/+bug/1946244/+subscriptions



Follow ups