172 Commits

Author SHA1 Message Date
Christoph Reiter
553846537b add some debug logs for JOB_CHECK_RUN_ID
seems like it's not there in some cases (?)
2025-10-05 09:49:19 +02:00
Christoph Reiter
c6213b4d1a Partly remove hack to fetch the current job ID
GH runner now exposes a "job.check_run_id" in the template
language, which we can use directly for the API to fetch
information about the job currently in progress.

Previously we looked through all active jobs and matched them
by name.

There is no env var for job.check_run_id, so we have to set the
env var in the yaml file still.
2025-10-03 22:16:09 +02:00
Christoph Reiter
ecd1d51f4d Use native arm64 Python 2025-09-17 11:11:28 +02:00
Christoph Reiter
a3bae5a40c Drop support for Python 3.11
We kinda depend on os.path.isjunction, so just drop it
2025-08-26 22:05:43 +02:00
Christoph Reiter
d15bda6f83 CI: update actions/checkout 2025-08-25 09:49:26 +02:00
Christoph Reiter
fd77359a5a Drop support for Python 3.10 2025-08-01 08:26:25 +02:00
Christoph Reiter
70dec0bd33 CI: revert to windows-2022 for now
see https://github.com/msys2/MINGW-packages/pull/24677#issuecomment-3017919467
2025-06-30 08:22:56 +02:00
Christoph Reiter
999e4e9327 Try to match the install paths of the packages CI more closely
Things are failing and the only difference in the logs are paths, so
try to get rid of that difference at least.
2025-05-19 09:32:07 +02:00
Christoph Reiter
663b7acdc1 zizmor: allow unpinned setup-msys2
we trust our own code
2025-04-28 06:31:28 +02:00
Christoph Reiter
caa6a73b53 CI: remove useless condition
as pointed out in https://github.com/msys2/msys2-autobuild/pull/112/files#r2047370653
if release==false then the location is not used anyway
2025-04-16 19:54:04 +02:00
Christoph Reiter
a2fb8db0e7 config: add more runner specific config
instead of hardcoding them in multiple places
2025-04-16 06:34:39 +02:00
Christoph Reiter
311b4cd295 CI: run tests on windows-11-arm
force x64 Python still since installing our deps still fails
for arm64 there
2025-04-16 06:34:39 +02:00
Christoph Reiter
e9e823c2e7 build: try to use actions/cache@v4 for pip caching
To work around https://github.com/actions/setup-python/issues/1050
2025-03-12 06:48:14 +01:00
Christoph Reiter
fe4bcd08a9 CI: disable "update-environment" for "setup-python"
setup-python, by default, sets various cmake and pkg-config env
vars, so that packages using cmake can be built. Since this might
interfere with out package builds disable it.

We only care about the Python executable itself, so use the action
output to create the venv.
2025-03-10 08:38:48 +01:00
Christoph Reiter
47cc05c39f CI: also use a venv for the Windows build job
To be more isolated from the host system
2025-03-10 08:30:20 +01:00
Christoph Reiter
a2ebb72da0 CI: use a venv for the linux jobs
To gain more isolation from the host
2025-03-09 19:26:37 +01:00
Christoph Reiter
d45f6720f4 CI: move to Python 3.13 2025-03-07 12:06:20 +01:00
Christoph Reiter
5f9bed8409 CI: remove VCPKG_ROOT workaround
This was to avoid breakage from https://github.com/actions/runner-images/pull/6192
But it was reverted in the image long ago: https://github.com/actions/runner-images/issues/6376
2025-03-07 10:07:04 +01:00
Christoph Reiter
625631832e CI: derive the build root from GITHUB_WORKSPACE
On hosted runners this means D:, on self-hosted it
will point to C: if there is only one drive.
2025-03-06 00:27:11 +01:00
Christoph Reiter
7ec5a79b46 CI: build on D: instead of C:
Related to 796ec1c1ba

D: is both faster and has more free space compared to C: with the current runner setup.
2025-03-05 23:19:23 +01:00
Christoph Reiter
98f6ea2875 CI: set default permissions to make newer zizmor happy 2025-01-19 09:27:23 +01:00
Christoph Reiter
1575848e81 Move to windows-2025 2024-12-20 11:23:33 +01:00
Christoph Reiter
0f20d6bfa8 Reapply "CI: remove code scanning again"
This reverts commit c553f33cf05394be3733705adc4c3ad86e1a044d.

I still can't get it to work and I give up
2024-12-13 22:16:39 +01:00
Christoph Reiter
c553f33cf0 Revert "CI: remove code scanning again"
This reverts commit c5b593a34c9d51fac31f3c3e158db7b15a004804.

try the suggestion from
https://github.com/woodruffw/zizmor/discussions/291
2024-12-13 21:51:40 +01:00
Christoph Reiter
c5b593a34c CI: remove code scanning again
And just fail normally in the job if anything is found.
I can't get the code scanning to fail a check somehow.
2024-12-13 21:34:31 +01:00
Christoph Reiter
1bc0a28e35 CI: run zizmor 2024-12-13 20:55:43 +01:00
Christoph Reiter
4deb3111d3 CI: move to ubuntu-24.04
from ubuntu-22.04
2024-12-06 14:41:07 +01:00
Christoph Reiter
5bf958fd1b CI-hardening: move permissions to the job level
Instead of giving all jobs write permissions, default to no permissions
and enable them on a per-job basis.

This does not change anything for us, but avoids accidental write
permissions if a new job gets added without considering that it inherits
the top level permissions, even if it doesn't need them.

See https://woodruffw.github.io/zizmor/audits/#excessive-permissions
2024-12-06 14:17:15 +01:00
Christoph Reiter
7eed3d8bc1 CI-hardening: escape the msys2-location output
While that comes from our own action, so we can in theory trust it,
escape it for good measure. Can't hurt and silences a warning.
2024-12-06 13:59:38 +01:00
Christoph Reiter
7c78444174 CI-hardening: set persist-credentials=false for all actions/checkout
To avoid writing the token to disk. It still gets exposed via env vars
to various steps, but this removes the access from any steps before that.

As recommeded by the zizmor scanner
2024-12-06 13:59:25 +01:00
Christoph Reiter
19c8f00aba CI: update to Python 3.12; also test with 3.13 2024-12-06 13:59:06 +01:00
Jeremy Drake
22f1e5ad0b Revert "Partially revert "CI: Update actions/setup-python""
The upstream issue has (finally) been fixed.

This reverts commit 3e617554bbe6fc206a4032e86b0cc79aedad42e6.
2024-08-29 20:52:12 +02:00
Christoph Reiter
67d510ec4b CI: use the new setup-msys2 output for finding the install location 2024-08-03 13:50:05 +02:00
Jeremy Drake
3e617554bb Partially revert "CI: Update actions/setup-python"
Due to actions/setup-python#819, it fails to install python on a Windows
11 (or presumably Server 2022) self-hosted runner, when a suitable
version of python was not already installed.

Closes #85

This partially reverts commit d5779cd65dbe2e5dceb418c040b7d0d505372294.
2024-03-18 05:42:33 +01:00
Christoph Reiter
d4515ba2fe CI: Update al-cheb/configure-pagefile-action 2024-02-02 19:13:29 +01:00
Christoph Reiter
aa0637d87b CI: Update actions/cache 2024-02-01 20:25:36 +01:00
Christoph Reiter
d5779cd65d CI: Update actions/setup-python 2024-01-30 07:24:44 +01:00
Christoph Reiter
dae5e305db CI: Update to actions/checkout@v4 2023-10-22 16:16:45 +02:00
Christoph Reiter
1f4971c293 Drop support for Python 3.8/9 2023-10-22 16:03:57 +02:00
Christoph Reiter
0af6deb998 CI: allow the "Configure Pagefile" step to fail
it's only a requirement for some packages (flang), and there is a much higher
chance that it fails for a job that doesn't need it currently.
2023-08-16 20:55:46 +02:00
Christoph Reiter
a1540964f5 Remove winjitdebug again
things should be fixed with Python 3.11
2023-07-24 18:22:19 +02:00
Christoph Reiter
79096b753c build: disable setup-msys2 caching for the arm64 runner
it's not really helping in case of self-hosted runners,
so just disable it there.
2023-05-28 21:02:12 +02:00
Christoph Reiter
6d6d83ea3e CI: Python 3.10 -> 3.11
looks like all dependencies have wheels for 3.11 now
2023-05-27 08:54:06 +02:00
Christoph Reiter
f3bf1b80b0 Revert "CI: run every 2 hours instead of 3"
This reverts commit 3116e844bee9bb9515ea892b37238e54cf2fcb98.
2023-04-05 16:58:30 +02:00
Christoph Reiter
3ef72c5eed CI: try per-job concurrency
so that we start jobs even if other jobs from a previous workflow are still running
2023-04-05 16:52:08 +02:00
Christoph Reiter
3116e844be CI: run every 2 hours instead of 3 2023-03-24 17:18:21 +01:00
Christoph Reiter
30fbfffb96 CI: installing wheel shouldn't be needed anymore
pip pulls it in now if needed
2023-03-24 13:44:21 +01:00
Christoph Reiter
8cb3c65f55 turns out matrix in needs is broken
https://github.com/orgs/community/discussions/25364
2023-03-24 13:27:50 +01:00
Christoph Reiter
7417496d9e write_build_plan: rework + build src last
* don't show the cycles when generating the build plan
  (we have other places that show it now)
* interleave the different build types when generating jobs
* make the src jobs depend on the non-src jobs, as src builds
  depend on eiher msys or ucrt64 build results and otherwise
  will just stop due to missing deps. Could be improved by only
  depending on msys/ucrt64, but this is still an improvement.
2023-03-24 13:19:12 +01:00
Christoph Reiter
e0e19de2c1 Add some unit tests
just one to get things started
2023-03-22 12:47:27 +01:00