Bug 1482776

Summary: ipa upgrade fails with error message "RuntimeError: attribute "allowWeakCipher" not allowed" for older builds
Product: Red Hat Enterprise Linux 7 Reporter: Nikhil Dehadrai <ndehadra>
Component: doc-Linux_Domain_Identity_Management_GuideAssignee: Aneta Šteflová Petrová <apetrova>
Status: CLOSED DUPLICATE QA Contact: ipa-qe <ipa-qe>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.4CC: pvoborni, rcritten, rhel-docs, sumenon, tscherf
Target Milestone: rcKeywords: Documentation
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-29 00:37:00 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Nikhil Dehadrai 2017-08-18 05:49:46 UTC
Description of problem:
ipa upgrade fails with error message "RuntimeError: attribute "allowWeakCipher" not allowed" when upgraded from rhel 7.0 to Rhel 7.4.1.2

Version-Release number of selected component (if applicable):
4.5.0.21.el7_4.1.2

How reproducible:
Always

Steps to Reproduce:
1. Setup IPA server on RHEL 7.0 (ipa-server-3.3.3-28.el7.x86_64)
2. Configure latest repo to this IPA server.
3. Update this IPA server using command 'yum -y update 'ipa*' sssd'


Actual results:
After step 3, upgrade fails
# yum -y update 'ipa*' sssd
Upgrade failed with attribute "allowWeakCipher" not allowed
IPA server upgrade failed: Inspect /var/log/ipaupgrade.log and run command ipa-server-upgrade manually.
('IPA upgrade failed.', 1)

# tail -50 /var/log/ipaupgrade.log

2017-08-07T08:33:25Z DEBUG Destroyed connection context.ldap2_108199568
2017-08-07T08:33:25Z ERROR Upgrade failed with attribute "allowWeakCipher" not allowed
2017-08-07T08:33:25Z DEBUG Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ipaserver/install/upgradeinstance.py", line 220, in __upgrade
    self.modified = (ld.update(self.files) or self.modified)
  File "/usr/lib/python2.7/site-packages/ipaserver/install/ldapupdate.py", line 911, in update
    self._run_updates(all_updates)
  File "/usr/lib/python2.7/site-packages/ipaserver/install/ldapupdate.py", line 885, in _run_updates
    self._update_record(update)
  File "/usr/lib/python2.7/site-packages/ipaserver/install/ldapupdate.py", line 807, in _update_record
    self.conn.update_entry(entry)
  File "/usr/lib/python2.7/site-packages/ipapython/ipaldap.py", line 1553, in update_entry
    self.conn.modify_s(str(entry.dn), modlist)
  File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python2.7/site-packages/ipapython/ipaldap.py", line 990, in error_handler
    raise errors.ObjectclassViolation(info=info)
ObjectclassViolation: attribute "allowWeakCipher" not allowed

2017-08-07T08:33:25Z DEBUG Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ipaserver/install/service.py", line 504, in start_creation
    run_step(full_msg, method)
  File "/usr/lib/python2.7/site-packages/ipaserver/install/service.py", line 494, in run_step
    method()
  File "/usr/lib/python2.7/site-packages/ipaserver/install/upgradeinstance.py", line 228, in __upgrade
    raise RuntimeError(e)
RuntimeError: attribute "allowWeakCipher" not allowed

2017-08-07T08:33:25Z DEBUG   [error] RuntimeError: attribute "allowWeakCipher" not allowed
2017-08-07T08:33:25Z DEBUG   [cleanup]: stopping directory server
2017-08-07T08:33:25Z DEBUG Destroyed connection context.ldap2_76635792
2017-08-07T08:33:25Z DEBUG Starting external process
2017-08-07T08:33:25Z DEBUG args=/bin/systemctl stop dirsrv
2017-08-07T08:33:27Z DEBUG Process finished, return code=0
2017-08-07T08:33:27Z DEBUG stdout=
2017-08-07T08:33:27Z DEBUG stderr=
2017-08-07T08:33:27Z DEBUG   duration: 1 seconds
2017-08-07T08:33:27Z DEBUG   [cleanup]: restoring configuration
2017-08-07T08:33:27Z DEBUG Loading StateFile from '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG Loading StateFile from '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG Saving StateFile to '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG Loading StateFile from '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG Loading StateFile from '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG Saving StateFile to '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG Loading StateFile from '/var/lib/ipa/sysrestore/sysrestore.state'
2017-08-07T08:33:27Z DEBUG   duration: 0 seconds
2017-08-07T08:33:27Z ERROR IPA server upgrade failed: Inspect /var/log/ipaupgrade.log and run command ipa-server-upgrade manually.
2017-08-07T08:33:27Z DEBUG   File "/usr/lib/python2.7/site-packages/ipapython/admintool.py", line 172, in execute
    return_value = self.run()
  File "/usr/lib/python2.7/site-packages/ipaserver/install/ipa_server_upgrade.py", line 48, in run
    raise admintool.ScriptError(str(e))

2017-08-07T08:33:27Z DEBUG The ipa-server-upgrade command failed, exception: ScriptError: ('IPA upgrade failed.', 1)
2017-08-07T08:33:27Z ERROR ('IPA upgrade failed.', 1)
2017-08-07T08:33:27Z ERROR The ipa-server-upgrade command failed. See /var/log/ipaupgrade.log for more information
[root@auto-hv-01-guest07 ~]#


Expected results:
Ipa upgrade should be successful from RHEL 7.0 to latest package.

Additional info:
If we upgrade RHEL 7.0 to RHEL 7.1.z and then upgrade to latest package, then  upgrade is successful.

Comment 2 Petr Vobornik 2017-08-28 11:05:28 UTC
This bug happens if admin upgrades directly from RHEL 7.0 to RHEL 7.4. If the admin upgrades e.g. to RHEL 7.1 first and then to RHEL 7.0 then it doesn't happen. 

It should be documented to advise to update to lesser version first if upgrading to from RHEL 7.0.

Comment 3 Aneta Šteflová Petrová 2017-08-28 11:13:13 UTC
I think we might already have this covered -- see 8.1.1. Considerations for Updating Identity Management in the description for updating IdM:

----
Red Hat recommends upgrading to the next version only. For example, if you want to upgrade to Identity Management for Red Hat Enterprise Linux 7.4, we recommend upgrading from Identity Management for Red Hat Enterprise Linux 7.3. Upgrading from earlier versions can cause problems.
----

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Linux_Domain_Identity_Authentication_and_Policy_Guide/updating-migrating.html#update-ipa-prereqs

Petr, does this cover the situation in this bug report? Would you change or add anything? If not, can I close this BZ?

Comment 4 Petr Vobornik 2017-08-28 15:33:35 UTC
I think it covers it well. Please close it.

Comment 5 Aneta Šteflová Petrová 2017-08-29 00:37:00 UTC
Ok, thanks! I'll just close this as a duplicate of the BZ for which we added the paragraph.

*** This bug has been marked as a duplicate of bug 1412530 ***

Comment 6 Florence Blanc-Renaud 2018-08-13 12:28:45 UTC
*** Bug 1615305 has been marked as a duplicate of this bug. ***