Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-18328

Add hacking check to prevent eventlet reintroduction in OpenStack

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: Normal Normal
    • 2026.1 (G)
    • None
    • openstack-heat
    • None
    • Sprint 4, Sprint 7
    • 2
    • Important

      Goal

      Implement a hacking check to prevent eventlet from being accidentally reintroduced into the Heat codebase after its migration away from eventlet. This follows the post-migration guidance from the eventlet removal project which recommends adding specific checks using the OpenStack Hacking framework to block eventlet imports at code review time.

      Goal statement

      Add a new hacking check (HE305) that automatically detects and prevents any attempt to import eventlet or its submodules, ensuring Heat maintains its eventlet-free status and preventing potential security and maintenance issues associated with eventlet.

      Acceptance Criteria

      • Verify that a new hacking check HE305 is implemented in heat/hacking/checks.py
      • Verify that the check detects direct eventlet imports (import eventlet)
      • Verify that the check detects from eventlet imports (from eventlet import ...)
      • Verify that the check is registered in tox.ini flake8 local-plugins configuration
      • Verify that comprehensive unit tests are added to heat/tests/test_hacking.py covering both positive and negative test cases
      • Verify that HACKING.rst documentation is updated to include the new HE305 rule
      • Verify that the check fails when eventlet import is detected and passes when no eventlet import is present
      • Verify that the check ignores commented eventlet imports
      • Verify that the check works with various whitespace patterns and indentation levels

              hberaud Hervé Beraud
              hberaud Hervé Beraud
              rhos-dfg-pidone
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: