vidalt / HGS-CVRP

Modern implementation of the hybrid genetic search (HGS) algorithm specialized to the capacitated vehicle routing problem (CVRP). This code also includes an additional neighborhood called SWAP*.

Home Page:https://arxiv.org/abs/2012.10384

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Git action recently failing on Windows

vidalt opened this issue · comments

For some reason, the git actions designed to test the code started failing recently after a commit that only involved the README.md (https://github.com/vidalt/HGS-CVRP/actions/runs/3420070648). As the considered update had no impact on the code, it seems that some configuration or upgrade in the way git actions run makes the experiment fail. So far, we know that only the Windows action fails (the others get automatically canceled as a consequence). @chkwon tested the code locally on Windows, and everything worked fine. I'm not personally an expert on Git actions and could not pinpoint so far where the issue is; anyone has a clue?

Hello @vidalt
Maybe some upgrade to git action's runner-images/containers (or any packages) for windows could be causing this.
I tinked a bit, and it runs fine now https://github.com/mrprajesh/HGS-CVRP2/actions/runs/3716051998
If PRs are welcome, I can.

image

Kind regards,
Rajesh

Oh, wow. that's great! @mrprajesh. I applied to PyHygese and it went well! https://github.com/chkwon/PyHygese/actions/runs/3716208100

Hello @mrprajesh, thanks! Reverting the action to "windows-2019" instead of "windows-latest" avoids the problem... but this also means that we can't currently run on the latest version of the Windows server used by Github:
https://github.blog/changelog/2022-01-11-github-actions-jobs-running-on-windows-latest-are-now-running-on-windows-server-2022/
Ideally, it would be best to understand what configuration issue provoked this when migrating from Windows 2019 to 2022... perhaps a different version of CMake? (https://github.com/actions/runner-images/blob/main/images/win/Windows2022-Readme.md)

Ideally, it would be best to understand what configuration issue provoked this when migrating from Windows 2019 to 2022...

You are right, @vidalt. That's precisely what I tried but could not figure out. I agree -- This can only be a temporary fix.

perhaps a different version of CMake?

I guess both windows 2022 and 2019 has same CMake 3.25. So, maybe the arguments passed to cmake.exe or something else. Initially, I thought it had something to do with the backslash or forward slash in file paths -- it seems that is not. The clue lies somewhere here. //Capturing screenshots as the logs may soon expire.

image

//More info.

If you see any issues with your workflows during this transition period:

  • File an issue in this repository
  • Switch back to windows-2019 by specifying the windows-2019 label in your workflow. We will continue to support Windows Server 2019 image.

It seems they/GitHub know it is a breaking change: actions/runner-images#4856 Maybe we can wait till they fix the bug or file the bug & wait.

When I checked, it was not the problem of the testing CMake modules. It was something about the compile step. Although it compiles well and produces the binary hgs.exe, it simply does not run on windows-latest.

See: https://github.com/chkwon/HGS-CVRP/actions/runs/3742216144/jobs/6352865135#step:3:59

Thanks a lot, @mrprajesh and @chkwon, for investigating this. Let's hope this type of compatibility issue will be fixed soon. For now, I added the windows-2019 to the CI integration script as suggested and deactivated fail fast (7686c2d), so we still have the tests running correctly on all other platforms.

Closed issue resolved with #36
Thanks a lot, @chkwon, @mrprajesh and @igormcoelho for all the help with this issue