Skip to content

Fix CI integration test failures#16

Merged
jmmoser merged 1 commit into
mainfrom
claude/fix-github-workflow-BDjny
May 9, 2026
Merged

Fix CI integration test failures#16
jmmoser merged 1 commit into
mainfrom
claude/fix-github-workflow-BDjny

Conversation

@jmmoser

@jmmoser jmmoser commented May 9, 2026

Copy link
Copy Markdown
Owner

Two breakages in the integration test steps:

  1. pip install -U pymodbus pulls pymodbus 3.x, which removed
    pymodbus.server.sync and ModbusBinaryFramer. server.py crashes
    on import, leaving the modbus client step to time out against a
    port nothing is listening on. Pin to pymodbus<3 so the existing
    server.py still imports, and pin Python to 3.11 since pymodbus
    2.5.3 has not been validated against newer interpreters.

  2. Servers are backgrounded with & and the next step runs the
    client immediately, racing the listen socket. Add explicit
    wait-for-port steps using bash's /dev/tcp before each client
    runs, and capture server output to /tmp logs so a failure surfaces
    diagnostics instead of just timing out.

Also nohup the backgrounded servers and redirect their output so
they survive the step boundary cleanly without printing into the
runner log mid-step.

Two breakages in the integration test steps:

1. `pip install -U pymodbus` pulls pymodbus 3.x, which removed
   `pymodbus.server.sync` and `ModbusBinaryFramer`. server.py crashes
   on import, leaving the modbus client step to time out against a
   port nothing is listening on. Pin to pymodbus<3 so the existing
   server.py still imports, and pin Python to 3.11 since pymodbus
   2.5.3 has not been validated against newer interpreters.

2. Servers are backgrounded with `&` and the next step runs the
   client immediately, racing the listen socket. Add explicit
   wait-for-port steps using bash's /dev/tcp before each client
   runs, and capture server output to /tmp logs so a failure surfaces
   diagnostics instead of just timing out.

Also `nohup` the backgrounded servers and redirect their output so
they survive the step boundary cleanly without printing into the
runner log mid-step.
@jmmoser jmmoser merged commit de1ce28 into main May 9, 2026
1 check failed
@jmmoser jmmoser deleted the claude/fix-github-workflow-BDjny branch May 9, 2026 16:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants