Mathieu Fenniak
1a633ad513
chore: prepare for runner v13 release ( #1645 )
...
Global search and replace of `runner/v12` for `runner/v13`.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1645 ): <!--number 1645 --><!--line 0 --><!--description Y2hvcmU6IHByZXBhcmUgZm9yIHJ1bm5lciB2MTMgcmVsZWFzZQ==-->chore: prepare for runner v13 release<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1645
Reviewed-by: Andreas Ahlenstorf <aahlenst@noreply.code.forgejo.org >
2026-08-03 15:55:53 +00:00
Mathieu Fenniak
5294e421f7
chore: increase the length of the cache token key ( #1508 )
...
A 32-bit random token may be subject to a brute-force attack from other Action runs on the same local instance.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1508 ): <!--number 1508 --><!--line 0 --><!--description Y2hvcmU6IGluY3JlYXNlIHRoZSBsZW5ndGggb2YgdGhlIGNhY2hlIHRva2VuIGtleQ==-->chore: increase the length of the cache token key<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1508
Reviewed-by: Gusted <gusted@noreply.code.forgejo.org >
2026-05-03 02:39:54 +00:00
Mathieu Fenniak
79c26c9959
refactor: pull cache server management out of runner ( #1373 )
...
When `NewRunner` is invoked, it creates a `Runner` which does client-specific configuration -- environment variables `GITHUB_SERVER_URL`, `ACTIONS_RUNTIME_URL`, and `ACTIONS_RESULTS_URL` are all different based upon the connection address to the remote client. If we're going to support multiple connections to different servers, we're going to need multiple runners with these different environments. `NewRunner` also creates the cache server.
This PR pulls the cache server creation out of `NewRunner` so that multiple runners could be created.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1373 ): <!--number 1373 --><!--line 0 --><!--description cmVmYWN0b3I6IHB1bGwgY2FjaGUgc2VydmVyIG1hbmFnZW1lbnQgb3V0IG9mIHJ1bm5lcg==-->refactor: pull cache server management out of runner<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1373
Reviewed-by: Andreas Ahlenstorf <aahlenst@noreply.code.forgejo.org >
Co-authored-by: Mathieu Fenniak <mathieu@fenniak.net >
Co-committed-by: Mathieu Fenniak <mathieu@fenniak.net >
2026-02-13 19:55:05 +00:00
limiting-factor
c196605572
chore: bump version to v12 ( #1176 )
...
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1176 ): <!--number 1176 --><!--line 0 --><!--description Y2hvcmU6IGJ1bXAgdmVyc2lvbiB0byB2MTI=-->chore: bump version to v12<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1176
Reviewed-by: Mathieu Fenniak <mfenniak@noreply.code.forgejo.org >
Co-authored-by: limiting-factor <limiting-factor@posteo.com >
Co-committed-by: limiting-factor <limiting-factor@posteo.com >
2025-11-22 16:25:20 +00:00
Andrew Cassidy
2de7e57e08
chore: log reason reverse proxy can't be started ( #1089 )
...
Following on to #1065 , the reason that the reverse proxy cannot be started (such as an invalid cache server URL) wasn't being logged.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1089 ): <!--number 1089 --><!--line 0 --><!--description Y2hvcmU6IGxvZyByZWFzb24gcmV2ZXJzZSBwcm94eSBjYW4ndCBiZSBzdGFydGVk-->chore: log reason reverse proxy can't be started<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1089
Reviewed-by: Mathieu Fenniak <mfenniak@noreply.code.forgejo.org >
Reviewed-by: earl-warren <earl-warren@noreply.code.forgejo.org >
Co-authored-by: Andrew Cassidy <drewcassidy@me.com >
Co-committed-by: Andrew Cassidy <drewcassidy@me.com >
2025-10-14 08:08:03 +00:00
Mathieu Fenniak
a3d46d7597
chore: add additional logging to cacheproxy ( #1065 )
...
In support of diagnosing #1064 , I hope.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1065 ): <!--number 1065 --><!--line 0 --><!--description Y2hvcmU6IGFkZCBhZGRpdGlvbmFsIGxvZ2dpbmcgdG8gY2FjaGVwcm94eQ==-->chore: add additional logging to cacheproxy<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1065
Reviewed-by: earl-warren <earl-warren@noreply.code.forgejo.org >
Co-authored-by: Mathieu Fenniak <mathieu@fenniak.net >
Co-committed-by: Mathieu Fenniak <mathieu@fenniak.net >
2025-10-07 08:12:16 +00:00
Kwonunn
6bdb7ed9c7
fix: Correctly override the value of Forgejo-Cache-Host when ACTIONS_CACHE_URL is overridden. ( #1027 )
...
This fixes a bug currently preventing use of an external cache server in the Codeberg runner setup.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- bug fixes
- [PR](https://code.forgejo.org/forgejo/runner/pulls/1027 ): <!--number 1027 --><!--line 0 --><!--description Zml4OiBDb3JyZWN0bHkgb3ZlcnJpZGUgdGhlIHZhbHVlIG9mIGBGb3JnZWpvLUNhY2hlLUhvc3RgIHdoZW4gQUNUSU9OU19DQUNIRV9VUkwgaXMgb3ZlcnJpZGRlbi4=-->fix: Correctly override the value of `Forgejo-Cache-Host` when ACTIONS_CACHE_URL is overridden.<!--description-->
<!--end release-notes-assistant-->
Co-authored-by: Vivian <me@vivstuff.gay >
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/1027
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Reviewed-by: Mathieu Fenniak <mfenniak@noreply.code.forgejo.org >
Co-authored-by: Kwonunn <kwonunn@noreply.code.forgejo.org >
Co-committed-by: Kwonunn <kwonunn@noreply.code.forgejo.org >
2025-09-26 07:02:45 +00:00
Earl Warren
8a7f760d3c
chore: bump version to v11 ( #940 )
...
the license change from MIT to GPLv3+ is a breaking change
Refs forgejo/runner#773
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/940 ): <!--number 940 --><!--line 0 --><!--description Y2hvcmU6IGJ1bXAgdmVyc2lvbiB0byB2MTE=-->chore: bump version to v11<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/940
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-09-05 07:29:38 +00:00
Mathieu Fenniak
a3aedba3f1
refactor: remove duplicate computeMac function ( #936 )
...
It was raised during embargo review of #925 that there are two implementations of `computeMac`; this PR fixes that.
As all the tests for `computeMac` were in the `artifactcache` package, it made more sense to keep the method there. That required reversing the dependency `artifactcache->cacheproxy` package dependency -- it makes more sense to me for the proxy to depend on the cache, rather than vice-versa.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/936 ): <!--number 936 --><!--line 0 --><!--description cmVmYWN0b3I6IHJlbW92ZSBkdXBsaWNhdGUgY29tcHV0ZU1hYyBmdW5jdGlvbg==-->refactor: remove duplicate computeMac function<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/936
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Mathieu Fenniak <mathieu@fenniak.net >
Co-committed-by: Mathieu Fenniak <mathieu@fenniak.net >
2025-09-05 06:01:49 +00:00
Mathieu Fenniak
4bd93294d4
add WriteIsolationKey to MAC
2025-09-01 13:45:43 +02:00
Mathieu Fenniak
da7ef7c2a1
fix: PRs cache artifacts separate from other runs
2025-09-01 13:45:43 +02:00
Michael Kriese
27f425987c
chore: modernize code ( #857 )
...
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/857
Reviewed-by: earl-warren <earl-warren@noreply.code.forgejo.org >
Reviewed-by: Gusted <gusted@noreply.code.forgejo.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-08-15 04:54:13 +00:00
Earl Warren
0ff1ec4c04
chore: panic if a random name cannot be created ( #853 )
...
If that happens so much will go wrong that there is no point in continuing to do anything. It simplifies the requirements of the caller: it may be a function that is assumed to never error.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/853 ): <!--number 853 --><!--line 0 --><!--description Y2hvcmU6IHBhbmljIGlmIGEgcmFuZG9tIG5hbWUgY2Fubm90IGJlIGNyZWF0ZWQ=-->chore: panic if a random name cannot be created<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/853
Reviewed-by: Mathieu Fenniak <mfenniak@noreply.code.forgejo.org >
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-08-14 15:46:01 +00:00
Earl Warren
ec99579451
chore: to allow the runner to be imported, v9 needs to be in the go module ( #777 )
...
It will be imported by Forgejo.
<!--start release-notes-assistant-->
<!--URL:https://code.forgejo.org/forgejo/runner-- >
- other
- [PR](https://code.forgejo.org/forgejo/runner/pulls/777 ): <!--number 777 --><!--line 0 --><!--description Y2hvcmU6IHRvIGFsbG93IHRoZSBydW5uZXIgdG8gYmUgaW1wb3J0ZWQsIHY5IG5lZWRzIHRvIGJlIGluIHRoZSBnbyBtb2R1bGU=-->chore: to allow the runner to be imported, v9 needs to be in the go module<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/777
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-07-31 10:35:11 +00:00
Earl Warren
ebc7758c1f
chore: s|github.com/nektos/act/pkg|code.forgejo.org/forgejo/runner/act|
2025-07-28 19:23:07 +02:00
Earl Warren
c377159121
chore: use the same .golangci.yml as the runner & gofumpt over gofmt ( #206 )
...
To prepare for a smooth merge in the runner codebase.
- run with --fix for gofumpt and golangci
- manual edits for
- disabling useless package naming warning
- rename variables that had underscore in their name
- remove trailing else at the end of a few functions
Reviewed-on: https://code.forgejo.org/forgejo/act/pulls/206
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-07-28 12:26:41 +00:00
Earl Warren
6e59f129c1
chore(refactor): add common.RandName to keep name generation DRY
2025-07-12 18:54:17 +02:00
Kwonunn
ef94958cd5
review: Gusted review
2025-03-21 13:45:51 +00:00
Kwonunn
43f1298653
fix: external url and mac function matching
2025-03-21 13:45:51 +00:00
Kwonunn
aa0c46539c
review: add retries to generating runid in case of collision
2025-03-21 13:45:51 +00:00
Kwonunn
ef43d7c615
review: fix various issues brought up by Gusted
2025-03-21 13:45:51 +00:00
Kwonunn
e3adb49c50
functional save and restore through proxy
2025-03-21 13:45:51 +00:00
Kwonunn
95e754c06b
integrate the new cache proxy with the server viceice set up
2025-03-21 13:45:51 +00:00
Kwonunn
a6a1df7556
use safe sync.Map
2025-03-21 13:45:51 +00:00
Kwonunn
41032137ea
add copyright notice
2025-03-21 13:45:51 +00:00
Kwonunn
d736bb3435
rename workflowid to runid
2025-03-21 13:45:51 +00:00
Kwonunn
ce51735d7a
update the reverse proxy to read workflow id and inject new auth info
2025-03-21 13:45:51 +00:00
Kwonunn
f81731e2d9
add CreateWorkflowData
2025-03-21 13:45:51 +00:00
Kwonunn
d92f9305dc
wip: begin implementation of new design in proxy
2025-03-21 13:45:51 +00:00
Kwonunn
975364553b
fix cache proxy to work properly
2025-03-21 13:45:51 +00:00
Kwonunn
4b5ffd768f
implement proxy server
2025-03-21 13:45:51 +00:00
Kwonunn
11006f4ef3
implement hmac generation
2025-03-21 13:45:51 +00:00
Kwonunn
8bc36fb69a
create cache proxy based on cache server
2025-03-21 13:45:51 +00:00