[RUNNER] New Forgejo Actions CI runner for FreeIPA organization #700

Closed
opened 2026-08-03 09:23:05 +00:00 by abbra · 6 comments

Organization Name

freeipa

Use Case

We are migrating few projects from Codeberg where we used private runners (marked as 'vdali' in the workflows). I registered the same runner with the Fedora Forge and in general it works but sometimes it is denied from uploading results:

Aug 03 08:48:48 podman[23492]: time="2026-08-03T08:48:48Z" level=info msg="Received shutdown.Stop(), terminating!" PID=23492
Aug 03 08:48:50 systemd[1101]: podman.service: Consumed 1min 10.672s CPU time over 10min 12.208s wall clock time, 102.5M memory peak.
Aug 03 08:49:09 forgejo-runner[23481]: time="2026-08-03T08:49:09Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857
Aug 03 08:49:10 forgejo-runner[23481]: time="2026-08-03T08:49:10Z" level=warning msg="ReportLog error: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858
Aug 03 08:50:03 systemd[1101]: libpod-conmon-80d15ac4eb711beec8cd84f0b1f38da9e246c42d7d1a0b00c26faf76f2774c03.scope: Consumed 2.243s CPU time over 11min 21.442s wall clock time, 29.9M memory peak.
Aug 03 08:50:10 forgejo-runner[23481]: time="2026-08-03T08:50:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857
Aug 03 08:50:10 forgejo-runner[23481]: time="2026-08-03T08:50:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858
Aug 03 08:51:10 forgejo-runner[23481]: time="2026-08-03T08:51:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858
Aug 03 08:51:11 forgejo-runner[23481]: time="2026-08-03T08:51:11Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857
Aug 03 08:52:10 forgejo-runner[23481]: time="2026-08-03T08:52:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858
Aug 03 08:52:12 forgejo-runner[23481]: time="2026-08-03T08:52:12Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857
Aug 03 08:53:11 forgejo-runner[23481]: time="2026-08-03T08:53:11Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858
Aug 03 08:53:15 forgejo-runner[23481]: time="2026-08-03T08:53:15Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857
Aug 03 08:53:39 systemd[1101]: libpod-conmon-83e538dc37d1f07a7c70e56ef5791e0091ae9002e2061b86571ee8e7549dfa10.scope: Consumed 1.651s CPU time over 14min 57.615s wall clock time, 32.3M memory peak.

I saw similar issues with Codeberg as well but at much smaller scale.

I suspect we deal with the Fedora's infrastructure limits for non-trusted external resources (via Anubis?). It would be nice to have a runner that could work without these limitations.

The projects we need to test through the runners are primary written in Rust and thus are resource consuming, so probably enabling them for testing farm use is a better case.

Architecture Requirements

default (x86_64), aarch64

Runner type

testing-farm (minimal runner used only for running https://forge.fedoraproject.org/ci/testing-farm action)

Additional Context

No response

### Organization Name freeipa ### Use Case We are migrating few projects from Codeberg where we used private runners (marked as 'vdali' in the workflows). I registered the same runner with the Fedora Forge and in general it works but sometimes it is denied from uploading results: ``` Aug 03 08:48:48 podman[23492]: time="2026-08-03T08:48:48Z" level=info msg="Received shutdown.Stop(), terminating!" PID=23492 Aug 03 08:48:50 systemd[1101]: podman.service: Consumed 1min 10.672s CPU time over 10min 12.208s wall clock time, 102.5M memory peak. Aug 03 08:49:09 forgejo-runner[23481]: time="2026-08-03T08:49:09Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857 Aug 03 08:49:10 forgejo-runner[23481]: time="2026-08-03T08:49:10Z" level=warning msg="ReportLog error: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858 Aug 03 08:50:03 systemd[1101]: libpod-conmon-80d15ac4eb711beec8cd84f0b1f38da9e246c42d7d1a0b00c26faf76f2774c03.scope: Consumed 2.243s CPU time over 11min 21.442s wall clock time, 29.9M memory peak. Aug 03 08:50:10 forgejo-runner[23481]: time="2026-08-03T08:50:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857 Aug 03 08:50:10 forgejo-runner[23481]: time="2026-08-03T08:50:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858 Aug 03 08:51:10 forgejo-runner[23481]: time="2026-08-03T08:51:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858 Aug 03 08:51:11 forgejo-runner[23481]: time="2026-08-03T08:51:11Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857 Aug 03 08:52:10 forgejo-runner[23481]: time="2026-08-03T08:52:10Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858 Aug 03 08:52:12 forgejo-runner[23481]: time="2026-08-03T08:52:12Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857 Aug 03 08:53:11 forgejo-runner[23481]: time="2026-08-03T08:53:11Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6858 Aug 03 08:53:15 forgejo-runner[23481]: time="2026-08-03T08:53:15Z" level=warning msg="uploading final logs failed, but will be retried: deadline_exceeded: Post \"https://forge.fedoraproject.org/api/actions/runner.v1.RunnerService/UpdateLog\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" task_id=6857 Aug 03 08:53:39 systemd[1101]: libpod-conmon-83e538dc37d1f07a7c70e56ef5791e0091ae9002e2061b86571ee8e7549dfa10.scope: Consumed 1.651s CPU time over 14min 57.615s wall clock time, 32.3M memory peak. ``` I saw similar issues with Codeberg as well but at much smaller scale. I suspect we deal with the Fedora's infrastructure limits for non-trusted external resources (via Anubis?). It would be nice to have a runner that could work without these limitations. The projects we need to test through the runners are primary written in Rust and thus are resource consuming, so probably enabling them for testing farm use is a better case. ### Architecture Requirements default (x86_64), aarch64 ### Runner type testing-farm (minimal runner used only for running https://forge.fedoraproject.org/ci/testing-farm action) ### Additional Context _No response_
lenkaseg added this to the Sprint 26 project 2026-08-04 10:07:39 +00:00
Member

image

testing farm type runner scoped for 'freeipa' org is available, with label: 'testing-farm'

Use as:

    runs-on: testing-farm

Job concurrency: 20

You can see the config here: infra/ansible@195510e3b0/roles/openshift-apps/forgejo/runners/production/freeipa-1.yml

Let me know if everything works!

![image](/attachments/343f6629-ac53-4b99-80a6-689e8c31f2c7) testing farm type runner scoped for 'freeipa' org is available, with label: 'testing-farm' Use as: ``` runs-on: testing-farm ``` Job concurrency: 20 You can see the config here: infra/ansible@195510e3b0/roles/openshift-apps/forgejo/runners/production/freeipa-1.yml Let me know if everything works!
Member

Thats's for the x86_64 runner.

Do you want the arm64 as well? For simple job dispatch to testing farm the x86_64 should suffice, but no problem in adding one arm64 as well.

Thats's for the x86_64 runner. Do you want the arm64 as well? For simple job dispatch to testing farm the x86_64 should suffice, but no problem in adding one arm64 as well.
Member

I'll try to get more info about the anubis policy on selfhosted runners.

I'll try to get more info about the anubis policy on selfhosted runners.
Author

@lenkaseg thank you. For job dispatches x86_64 is indeed enough, no need for arm64 then. I'll need to work on my side to make sure we request both types from the testing farm.

@lenkaseg thank you. For job dispatches x86_64 is indeed enough, no need for arm64 then. I'll need to work on my side to make sure we request both types from the testing farm.
Author
Works fine: https://forge.fedoraproject.org/freeipa/ahdapa/actions/runs/12/jobs/0/attempt/2 and the testing farm result is here: https://artifacts.dev.testing-farm.io/387f9683-bed4-4849-8375-7e067e3aacc5/ Thank you!
abbra closed this issue 2026-08-05 16:31:06 +00:00
Member

Glad it works!
If there's any problem, let me know!

Glad it works! If there's any problem, let me know!
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forge/forge#700
No description provided.