Skip to content

ci: run all Linux jobs on self-hosted runner - #524

Open
leonardocarreras wants to merge 9 commits into
sogno-platform:masterfrom
leonardocarreras:ci/self-hosted-runner
Open

ci: run all Linux jobs on self-hosted runner#524
leonardocarreras wants to merge 9 commits into
sogno-platform:masterfrom
leonardocarreras:ci/self-hosted-runner

Conversation

@leonardocarreras

Copy link
Copy Markdown
Contributor

Move all Linux GitHub Actions jobs to a self-hosted runner.
Windows jobs stay on GitHub runner.

@leonardocarreras
leonardocarreras force-pushed the ci/self-hosted-runner branch 2 times, most recently from 24df7d6 to 65fa982 Compare July 10, 2026 18:09
@codecov

codecov Bot commented Jul 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 72.45%. Comparing base (5780c9f) to head (fddc353).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #524      +/-   ##
==========================================
+ Coverage   72.14%   72.45%   +0.30%     
==========================================
  Files         491      491              
  Lines       31623    31627       +4     
  Branches    16950    16951       +1     
==========================================
+ Hits        22815    22914      +99     
+ Misses       8722     8712      -10     
+ Partials       86        1      -85     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@leonardocarreras

leonardocarreras commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

@SystemsPurge seems to work, seems to be slow :) (tests 49m vs approx 30m, 50% slower)

@SystemsPurge

SystemsPurge commented Jul 11, 2026

Copy link
Copy Markdown

@leonardocarreras Is this the notebook tests?
If so, could that maybe be because of the added timeout in spots where requests are likely to fail?
Otherwise we could compare single test durations , as they seem to be in the logs

@leonardocarreras

Copy link
Copy Markdown
Contributor Author

@SystemsPurge yes, maybe is that... We can test a bit more, it can also be that too many process are being allowed in the one running the tests

Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
…ceful GitLab fallback

Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DPsim LLM review

Found 2 high, 2 medium, 1 low (0 anchored to lines below).

🔵 Optional / low-confidence (5)
  • Add missing PYTHONPATH for dpsimpyvillas in pytest environment [high · 35% confidence · unconfirmed] in .github/workflows/build_test_linux_fedora.yaml:164
  • PR mixes unrelated notebook code changes with CI runner migration [high · 35% confidence · unconfirmed] in multiple files
  • Import get_example_file before use [medium · 35% confidence · unconfirmed] in examples/Notebooks/Components/SynGenDq7od_SteadyState_DP_EMT.ipynb:662
  • Undocumented Ruby dependency for markdownlint [medium · 35% confidence · unconfirmed] in .github/workflows/pre_commit.yaml:16
  • Potential syntax error due to stray escape sequence in comment [low · 35% confidence · unconfirmed] in examples/Notebooks/Circuits/SP_Validation_ReducedOrderSG_VBR_SMIB_Fault_withPSAT.ipynb:198
How this review was produced

13 specialized finder passes raised 24 findings over the diff and the full changed sources. After de-duplication, 23 were re-checked against the current file and the base-class / interface headers it inherits (code as truth), escalating survivors to a stronger model: 18 refuted as unsupported, 5 kept (5 tentative).

Refuted by verification:

  • Add notebook-workdirs to .gitignore to prevent accidental commits (.gitignore): notebook-workdirs/ is already present in .gitignore on line 7
  • Add missing PYTHONPATH for notebook workdir isolation (.github/workflows/build_test_linux_fedora.yaml): PYTHONPATH already includes examples/Notebooks on line 164
  • Add missing newline after PYTHONPATH assignment (.github/workflows/build_test_linux_fedora.yaml): the PYTHONPATH assignment is followed by the DPSIM_REFERENCE_DATA_DIR line and the run block starts on a separate line
  • Add DPSIM_REFERENCE_DATA_DIR to pytest environment (.github/workflows/build_test_linux_fedora.yaml): DPSIM_REFERENCE_DATA_DIR is set in the pytest environment on line 165
  • Handle RWTH GitLab unreachable gracefully in CI (.github/workflows/build_test_linux_fedora.yaml): the workflow does not directly read the missing RWTH cache directory and comments state notebooks fall back to live download
  • Ensure VILLASnode containers are stopped even if the example fails (.github/workflows/run_villas_example.yaml): Stop containers uses if: ${{ always() }} on line 83 and the critiqued cleanup code was not changed
  • Add notebook-workdirs to .gitignore (.gitignore): notebook-workdirs/ is already present in .gitignore on line 7
  • Replace urllib.request.urlretrieve with get_example_file utility (examples/Notebooks/Circuits/CS_R2CL.ipynb): the notebook already imports get_example_file and uses it on line 286 instead of urllib
  • Replace urllib.request.urlretrieve with get_example_file utility (examples/Notebooks/Circuits/Compare_EMT_WSCC_9bus_IdealCS_DP_WSCC_9bus_IdealVS.ipynb): download_grid_data already calls get_example_file on line 25
  • Replace urllib.request.urlretrieve with get_example_file utility (examples/Notebooks/Circuits/Compare_EMT_WSCC_9bus_IdealVS_DP_WSCC_9bus_IdealVS.ipynb): download_grid_data already calls get_example_file on line 25
  • Replace urllib.request.urlretrieve with get_example_file utility (examples/Notebooks/Circuits/DP_Slack_PiLine_VSI_Ramp.ipynb): the notebook already imports get_example_file and uses it for the reference downloads
  • Correct simulation name to match log directory (examples/Notebooks/Circuits/EMT_Slack_PiLine_VSI_with_PF_Init.ipynb): sim_name is already EMT_Slack_PiLine_VSI_with_PF_Init on line 47
  • Import get_example_file before use (examples/Notebooks/Components/SynGenDq7od.ipynb): get_example_file is imported before the changed uses at lines 216 and 290
  • Import get_example_file before use (examples/Notebooks/Components/SynGenDq7od_ThreePhFault_DP_EMT.ipynb): get_example_file is imported on line 711 before it is used on line 718
  • Set log level to trace to ensure LeftVector.csv is written (examples/Notebooks/Components/SynGen_trStab_logger_test.ipynb): sim1 is already constructed with dpsimpy.LogLevel.trace on line 153

Automated, non-blocking review. May be wrong. Models: find mistral-small-4-119b-2603, gpt-oss-120b → verify gpt-5.4-mini → final gpt-5.5.

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