Skip to content

GitHub Actions: Run all tests on Windows#572

Merged
kjnilsson merged 8 commits intomainfrom
test-on-windows
Jan 14, 2026
Merged

GitHub Actions: Run all tests on Windows#572
kjnilsson merged 8 commits intomainfrom
test-on-windows

Conversation

@dumbbell
Copy link
Copy Markdown
Collaborator

@dumbbell dumbbell commented Jan 13, 2026

This branch:

  • fixes a few issues with the testsuites that appeared while trying tests on Windows
  • fixes a few Dialyzer warnings
  • enables testing on Windows in GitHub Actions

The modified workflow uses Rebar instead of Erlang.mk because Make and paths on Windows don’t work well. Also, Make is slow on Windows.

Note that the "Check actions update" GitHub Actions had to be disabled temporarily because we need an unreleased version of setup-beam that works on Windows.

With Erlang.mk, test nodes inherit from the `ERL_LIBS` environment
variable, so setting the code path on the test node command line was
unnecessary.

However, Rebar does not set this variable. Therefore we need to
explicitly add these dependencies to the code path.
This doesn't play nicely with other testsuites that ran previously
because we loose their logs and data.

While here, move the configuration of the logger and sasl to the
testsuite init. There is no need to to it for each test group. Also
remove the log handler on teardown, otherwise it keeps a log file open.
This reduces the risk of a test flake, in particular in CI.
…shot`

... instead of checking it once after a sleep. This reduces the risk of
a test flake in CI.
... in `delete_*_server_cluster*()`.

This should help reduce the risk of a test flake in CI.

tests
All of them were related to return values not being matched.
@dumbbell dumbbell requested a review from kjnilsson January 13, 2026 14:28
@dumbbell dumbbell self-assigned this Jan 13, 2026
[Why]
We have to use an unreleased version of the `setup-beam` action to benefit
from a fix when it is used on Windows. Unfortunately, setup-beam still has
no release with that fix, despite multiple requests.

[How]
For now, disable this job for pull requests and pushes to the main branch.
This required the use of Rebar instead of Erlang.mk to avoid any issues
with paths in Make.
@dumbbell dumbbell marked this pull request as ready for review January 14, 2026 14:48
@kjnilsson kjnilsson merged commit 4f51f7a into main Jan 14, 2026
7 checks passed
@dumbbell dumbbell deleted the test-on-windows branch January 15, 2026 15:30
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