Uploaded image for project: 'RHEL Conversions'
  1. RHEL Conversions
  2. RHELC-1393

Can't process tracebacks when /etc/system-release is missing

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • None
    • Testable

      The process crashes on the following line, when the filepath object is None.
      https://github.com/oamg/convert2rhel/blob/main/convert2rhel/backup/files.py#L41
      Discovered with missing_system_release test in tier0.
      When the /etc/system-release file is moved elsewhere or missing, the following function returns None, making the logerinst.critical message unreachable
      https://github.com/oamg/convert2rhel/blob/main/convert2rhel/redhatrelease.py#L34

      Reproducer:
      $ mv /etc/system-release /tmp/system-release
      $ convert2rhel

      Executing a command:
      mv -v /etc/system-release /tmp/missing-system-release_sysrelease_backup/
      
      renamed '/etc/system-release' -> '/tmp/missing-system-release_sysrelease_backup/system-release'
      
      Traceback (most recent call last):
        File "/usr/bin/convert2rhel", line 11, in <module>
          load_entry_point('convert2rhel==1.6.1', 'console_scripts', 'convert2rhel')()
        File "/usr/lib/python3.6/site-packages/convert2rhel/initialize.py", line 80, in run
          from convert2rhel import main
        File "/usr/lib/python3.6/site-packages/convert2rhel/main.py", line 26, in <module>
          from convert2rhel import pkghandler, pkgmanager, redhatrelease, repo, subscription, systeminfo, toolopts, utils
        File "/usr/lib/python3.6/site-packages/convert2rhel/redhatrelease.py", line 95, in <module>
          system_release_file = RestorableFile(get_system_release_filepath())  # pylint: disable=C0103
        File "/usr/lib/python3.6/site-packages/convert2rhel/backup/files.py", line 41, in __init__
          if not os.path.isabs(filepath):
        File "/usr/lib64/python3.6/posixpath.py", line 66, in isabs
          s = os.fspath(s)
      TypeError: expected str, bytes or os.PathLike object, not NoneType
      

            rolivier@redhat.com Rodolfo Olivieri
            ddiblik@redhat.com Daniel Diblik
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: