发布

  • 17844 c57fd18b64

    Run CI on self-hosted runners (#9540)

    frostbyte_neo 发布于 2026-06-17 19:11:32 +00:00 | 76 次提交 在此版本后已推送到 master

    • Run CI on self-hosted runners

    Switch all GitHub Actions workflows from the GitHub-hosted ubuntu-24.04
    runners to self-hosted runners. The Benchmarks workflow targets a runner
    with the dedicated 'benchmark' label so benchmarking only runs on that
    machine.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

    • Guard disk cleanup to GitHub-hosted runners, mount benchmark data read-only

    Skip the 'Liberate disk space' step on self-hosted runners (only run it on
    github-hosted ones) and mount the benchmark /nas:/Data volume read-only.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

    • Run workflows directly inside foundation container

    Self-hosted runners are not allowed to run docker, so the docker
    run/exec (runInContainer) pattern fails. Run every workflow directly
    inside a job-level container: quantconnect/lean:foundation, matching the
    benchmarks workflow. Drops the Liberate disk space, docker helper and
    Start container steps; secrets are passed via the container env.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

    • Cancel in-progress runs on new branch commits

    Add a concurrency group keyed to workflow + ref with cancel-in-progress so
    pushing a new commit to a branch cancels the still-running workflow for the
    previous commit. Applied to all CI/test workflows; rebase-org-branches is
    left untouched to avoid cancelling a rebase mid-push.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

    • Fix dotnet tools PATH in research workflow

    Inside a job-level container GitHub sets HOME=/github/home, so the global
    tool installs to $HOME/.dotnet/tools, not /root/.dotnet/tools. Use $HOME so
    dotnet-interactive is found and 'dotnet interactive jupyter install' works.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

    • Make stub-generation check POSIX-sh compatible

    The container steps run under sh, where bash-only is unavailable.
    Rewrite the tag/stub-generation gate as a POSIX case + [ ] test so it
    behaves correctly on tag builds instead of silently being skipped.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

    • Cap CI containers to 12 CPUs and 12g RAM

    Add docker options (--cpus 12 --memory 12g) to every workflow container so
    jobs running on high-core self-hosted hosts can't monopolize resources.
    Limits are per container, so concurrent jobs each get their own allotment.

    Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com


    Co-authored-by: Claude Opus 4.8 (1M context) noreply@anthropic.com

    下载附件