From 79eb374b74cecfca86b808e97bf7806d70eabe11 Mon Sep 17 00:00:00 2001 From: Benjamin Hackl Date: Tue, 3 Nov 2026 21:33:31 +0100 Subject: [PATCH] CI: move workflow to .github and use a subpath-aware checkout actions/checkout drops the /git subpath of our Gitea when building the clone URL. Use ischanx/checkout v6.0.2, pinned to its commit. --- {.gitea => .github}/workflows/ci.yml | 7 ++++++- DEVELOPMENT.md | 15 +++++++++++++-- 2 files changed, 19 insertions(+), 3 deletions(-) rename {.gitea => .github}/workflows/ci.yml (52%) diff --git a/.gitea/workflows/ci.yml b/.github/workflows/ci.yml similarity index 52% rename from .gitea/workflows/ci.yml rename to .github/workflows/ci.yml index 86dfb1b..903f328 100644 --- a/.gitea/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,6 +3,7 @@ name: CI on: push: branches: [main] + tags: ["v*"] pull_request: permissions: @@ -15,7 +16,11 @@ jobs: matrix: node: [22, 24] steps: - - uses: actions/checkout@v4 + # Upstream actions/checkout builds the clone URL from the server's origin + # and drops a subpath such as /git (actions/checkout#1370, #1242), so it + # cannot clone from imsc.uni-graz.at/git. ischanx/checkout keeps the path. + # Pinned to the commit of its v6.0.2 tag; its v4 tags lack the fix. + - uses: ischanx/checkout@b3a7a36c84c480d7e1a6f9f7ca7bb55dc519f0ba # v6.0.2 - uses: pnpm/action-setup@v4 with: version: 11 diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index e00be94..78095e2 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -82,5 +82,16 @@ As of November 2026, `gpt-5-nano` and `gpt-4.1-nano` return HTTP 500 3. Tag and push: `git tag vX.Y.Z && git push origin main vX.Y.Z`. 4. Update the version in the README's "Pinning a version" example. -CI is defined in `.gitea/workflows/ci.yml` and runs once Gitea Actions are -enabled for the repository. +## CI + +CI is defined in `.github/workflows/ci.yml`, which Gitea Actions reads as +well. It runs once Actions are enabled for the repository and a runner is +available. + +The workflow checks out code with `ischanx/checkout`, not +`actions/checkout`. Upstream builds the clone URL from the server's origin +and drops the `/git` subpath of imsc.uni-graz.at, so cloning fails +([actions/checkout#1370](https://github.com/actions/checkout/issues/1370)). +The fork's v6.0.2 tag fixes that; its v4 tags are identical to upstream and +do not. The action is pinned to a commit hash because it runs with the CI +token. When upgrading, review the fork's diff against upstream first.