6a9a447f86
Report errors by setting raw_output when it's error level ( #645 )
...
This solves #643 by setting the "raw_output" entry attribute when the log level is error. This results in the log line being shipped to the Gitea UI.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/645
Reviewed-by: Zettat123 <zettat123@noreply.gitea.com >
Co-authored-by: Pablo Carranza <pcarranza@gmail.com >
Co-committed-by: Pablo Carranza <pcarranza@gmail.com >
2025-06-05 17:53:13 +00:00
5302c25feb
Add environment variables for OIDC token service ( #674 )
...
Resurrecting [this PR](https://gitea.com/gitea/act_runner/pulls/272 ) (a dependency of [this one](https://github.com/go-gitea/gitea/pull/33945 )) after the original author [lost motivation](https://github.com/go-gitea/gitea/pull/25664#issuecomment-2737099259 ) - though, to be clear, all credit belongs to them, and all blame for mistakes or misunderstandings to me.
Co-authored-by: Søren L. Hansen <sorenisanerd@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/674
Reviewed-by: ChristopherHX <christopherhx@noreply.gitea.com >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Jack Jackson <scubbojj@gmail.com >
Co-committed-by: Jack Jackson <scubbojj@gmail.com >
2025-05-08 01:58:31 +00:00
a616ed1a10
feat: register interactive with values from cli ( #682 )
...
I used to be able to do something like `./act_runner register --instance https://gitea.com --token testdcff --name test` on GitHub Actions Runners, but act_runner always asked me to enter instance, token etc. again and requiring me to use `--no-interactive` including passing everything per cli.
My idea was to extract the preset input of some stages to skip the prompt for this value if it is a non empty string. Labels is the only question that has been asked more than once if validation failed, in this case the error path have to unset the values of the input structure to not end in a non-interactive loop.
_I have written this initially for my own gitea runner, might be useful to everyone using the official runner as well_
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/682
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Christopher Homberger <christopher.homberger@web.de >
Co-committed-by: Christopher Homberger <christopher.homberger@web.de >
2025-05-08 01:57:53 +00:00
f0b5aff3bb
fix: invalid label NoInteractive exit code ( #683 )
...
* add test
* return validation error not nil from function
Closes #665
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/683
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com >
Co-authored-by: Christopher Homberger <christopher.homberger@web.de >
Co-committed-by: Christopher Homberger <christopher.homberger@web.de >
2025-05-07 17:17:26 +00:00
b1ae30dda8
ephemeral act runner ( #649 )
...
Works for both interactive and non-interactive registration mode.
A further enhancement would be jitconfig support of the daemon command, because after some changes in Gitea Actions the registration token became reusable.
removing runner and fail seems not possible at the current api level
Part of https://github.com/go-gitea/gitea/pull/33570
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/649
Reviewed-by: Zettat123 <zettat123@noreply.gitea.com >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Christopher Homberger <christopher.homberger@web.de >
Co-committed-by: Christopher Homberger <christopher.homberger@web.de >
2025-03-13 21:57:44 +00:00
425a570261
use new docker image URLs ( #661 )
...
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/661
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: techknowlogick <techknowlogick@gitea.com >
Co-committed-by: techknowlogick <techknowlogick@gitea.com >
2025-03-01 20:21:52 +00:00
8bc0275e74
feat: add once flag to daemon command ( #19 ) ( #598 )
...
Once flag polls and completes one job then exits.
I use this with Windows Sandbox (and creating users with local brew install on Mac) to create a fresh environment every time.
Co-authored-by: Garet Halliday <garet@pit.dev >
Co-authored-by: Jason Song <wolfogre@noreply.gitea.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/598
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com >
Reviewed-by: Jason Song <wolfogre@noreply.gitea.com >
Co-authored-by: garet90 <garet90@noreply.gitea.com >
Co-committed-by: garet90 <garet90@noreply.gitea.com >
2024-11-06 17:16:08 +00:00
d1d3cad4b0
feat: allow graceful shutdowns ( #546 )
...
Add a `Shutdown(context.Context) error` method to the Poller. Calling this method will first shutdown all active polling, preventing any new jobs from spawning. It will then wait for either all jobs to finish, or for the context to be cancelled. If the context is cancelled, it will then force all jobs to end, and then exit.
Fixes https://gitea.com/gitea/act_runner/issues/107
Co-authored-by: Rowan Bohde <rowan.bohde@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/546
Reviewed-by: Jason Song <i@wolfogre.com >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: rowan-allspice <rowan-allspice@noreply.gitea.com >
Co-committed-by: rowan-allspice <rowan-allspice@noreply.gitea.com >
2024-05-27 07:38:55 +00:00
1735b26e66
Don't log job output when debug logging is not enabled ( #543 )
...
We wanted the ability to disable outputting the logs from the individual job to the console. This changes the logging so that job logs are only output to the console whenever debug logging is enabled in `act_runner`, while still allowing the `Reporter` to receive these logs and forward them to Gitea when debug logging is not enabled.
Co-authored-by: Rowan Bohde <rowan.bohde@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/543
Reviewed-by: Jason Song <i@wolfogre.com >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: rowan-allspice <rowan-allspice@noreply.gitea.com >
Co-committed-by: rowan-allspice <rowan-allspice@noreply.gitea.com >
2024-05-07 05:58:33 +00:00
be2df361ef
Ensure declare to use new labels ( #530 )
...
Ensure "declare" is supported, to use new labels, see https://gitea.com/gitea/act_runner/pulls/529
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/530
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
2024-04-02 07:39:40 +00:00
a5085dde0c
Use gitea/runner-images by default ( #529 )
...
See https://gitea.com/gitea/runner-images
Also give up ubuntu-18.04 since it's too old. And enable force_pull by default to check new versions of images.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/529
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
2024-04-02 07:38:14 +00:00
94c45acf6b
Use node 20 by default ( #526 )
...
Because Octokit requires Node 18 or higher now.
See https://github.com/octokit/octokit.js/#fetch-missing .
However, for existing runners, users should manually modify `labels` in the `.runner` file or `runner.labels` in the `config.yaml` file to update. Don't forget to restart.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/526
Reviewed-by: sillyguodong <sillyguodong@noreply.gitea.com >
2024-03-29 03:03:26 +00:00
23ec12b8cf
Bump act to v0.260.0 ( #522 )
...
Related to https://gitea.com/gitea/act/issues/99 .
Also update other main dependencies.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/522
Reviewed-by: Zettat123 <zettat123@noreply.gitea.com >
2024-03-27 03:17:04 +00:00
a1fc2b3ca7
Improve the explanation of workdir_parent
config ( #519 )
...
Fix #512
act_runner adds a '/' before the path (see 5977042b86/internal/app/run/runner.go (L186)
) . So `workdir_parent` doesn't need to have the prefix '/'.
If `workdir_parent` has the prefix '/', errors will occur when reading files from the job container.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/519
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Zettat123 <zettat123@gmail.com >
Co-committed-by: Zettat123 <zettat123@gmail.com >
2024-03-22 02:30:31 +00:00
75006a59cc
Support cloning remote actions from insecure Gitea instances ( #508 )
...
Follow https://gitea.com/gitea/act/pulls/92
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/508
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Zettat123 <zettat123@gmail.com >
Co-committed-by: Zettat123 <zettat123@gmail.com >
2024-03-06 06:10:37 +00:00
45270656df
Set the status of steps to skipped
if job is skipped ( #500 )
...
If a job is detected as skipped, its steps should also be `skipped`.
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/500
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: sillyguodong <gedong_1994@163.com >
Co-committed-by: sillyguodong <gedong_1994@163.com >
2024-03-01 08:33:32 +00:00
e14f42c40a
Add ACTIONS_RESULTS_URL to env ( #473 )
...
actions/upload-artifact@v4 and actions/download-artifact@v4 depend on this variable
BaseUrl in a url are ignored by the nodejs code of the new actions, so this change doesn't append the path of the older `ACTIONS_RUNTIME_URL`.
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/473
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Christopher Homberger <christopher.homberger@web.de >
Co-committed-by: Christopher Homberger <christopher.homberger@web.de >
2024-02-19 02:30:54 +00:00
e6630e2e36
Use artifacts v4 jwt if available ( #471 )
...
Needs https://github.com/go-gitea/gitea/pull/28885 to provide jwt if sent by server
Could fix #459 , but that has not been verified.
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/471
Reviewed-by: delvh <dev.lh@web.de >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Christopher Homberger <christopher.homberger@web.de >
Co-committed-by: Christopher Homberger <christopher.homberger@web.de >
2024-02-08 02:43:39 +00:00
f1f9142a3c
fix: Exit docker container on any process exit ( #462 )
...
## Description
Issue described in #460
## Changes
- Edited `supervisord.conf` to exit if it detects any of the supervisored processes exiting.
- minor text fix
## Notes
Without this change (or something similar), if act_runner fails, then the container will stay up as a zombie container - it does nothing and does not restart. After this change, if act_runner fails (e.g. due to Gitea instance being down), then supervisord will exit and the container will be restarted.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/462
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: davidfrickert <david.frickert@protonmail.com >
Co-committed-by: davidfrickert <david.frickert@protonmail.com >
2024-01-30 13:47:42 +00:00
f17cad1bbe
Update the docker image rebuild flag for config file and example gitea/act_runner#390 ( #391 )
...
this is a PR for the issue gitea/act_runner#390
It adding configuration for dockerfile container image to rebuild base on the configuration flag force_rebuild in config.yaml
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/391
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Alex Lau(AvengerMoJo) <avengermojo@gmail.com >
Co-committed-by: Alex Lau(AvengerMoJo) <avengermojo@gmail.com >
2023-12-20 07:13:33 +00:00
daf52d0e62
Sanitize UFT-8 content in logs ( #453 )
...
I accidently closed my previous PR #384
This PR replaces invalid UTF-8 character in a stream with `?` character. On Windows Server 2019 other characters are replaced by `?` as well so it's consistent.
fixes #452
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/453
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: hakito <hakito@noreply.gitea.com >
Co-committed-by: hakito <hakito@noreply.gitea.com >
2023-12-20 07:06:46 +00:00
934471813a
Fix #404 : nil map error when reading env file ( #405 )
...
Co-authored-by: Mark Glines <mark@glines.org >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/405
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: infinoid <infinoid@noreply.gitea.com >
Co-committed-by: infinoid <infinoid@noreply.gitea.com >
2023-11-24 01:56:27 +00:00
ed35b09b8f
change podman socket path ( #341 )
...
port of https://github.com/nektos/act/pull/1961
closes gitea/act_runner#274
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/341
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com >
Co-committed-by: TheFox0x7 <thefox0x7@gmail.com >
2023-08-21 04:01:12 +00:00
03f0829d09
Add ForcePull option ( #339 )
...
Close #271
What it does: instead of forcing the value of `ForcePull` to false, the user can now configure it on the runner yaml
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/339
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Gianni Angelozzi <gianni@sistema3.it >
Co-committed-by: Gianni Angelozzi <gianni@sistema3.it >
2023-08-17 06:51:57 +00:00
12999b61dd
Reduce unnecessary DB queries for Actions tasks ( #219 )
...
implement: https://github.com/go-gitea/gitea/issues/24544
Changes:
- Add a global variable `tasksVersion` to store the lastest version number which returned by Gitea.
- Pass `tasksVersion` to Gitea when invoking `FetchTask`.
- If there is no task in the `FetchTask` response, store the version from the `FetchTask` response into `tasksVersion` variable.
- If there is a task in the `FetchTask` response, set `tasksVersion` to zero to focre query db in next `FetchTask` request.
Related:
- Protocol: https://gitea.com/gitea/actions-proto-def/pulls/10
- Gitea side: https://github.com/go-gitea/gitea/pull/25199
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/219
Co-authored-by: sillyguodong <gedong_1994@163.com >
Co-committed-by: sillyguodong <gedong_1994@163.com >
2023-07-25 03:25:50 +00:00
49a2fcc138
fix endless loop ( #306 )
...
fix endless loop in poll
relate #305
Co-authored-by: CaiCandong <1290147055@qq.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/306
Co-authored-by: caicandong <caicandong@noreply.gitea.com >
Co-committed-by: caicandong <caicandong@noreply.gitea.com >
2023-07-24 07:07:53 +00:00
a1bb3b56fd
Catch the panic and print the error ( #305 )
...
refactor # 215 Catch the panic and print the error
close #215
Co-authored-by: CaiCandong <1290147055@qq.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/305
Co-authored-by: caicandong <caicandong@noreply.gitea.com >
Co-committed-by: caicandong <caicandong@noreply.gitea.com >
2023-07-24 04:28:44 +00:00
5d01cb8904
Add tips in config file ( #297 )
...
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/297
2023-07-20 02:16:30 +00:00
db662b3690
ci(lint): refactor code for clarity and linting compliance ( #289 )
...
- Removed `deadcode`, `structcheck`, and `varcheck` linters from `.golangci.yml`
- Fixed a typo in a comment in `daemon.go`
- Renamed `defaultActionsUrl` to `defaultActionsURL` in `exec.go`
- Removed unnecessary else clause in `exec.go` and `runner.go`
- Simplified variable initialization in `exec.go`
- Changed function name from `getHttpClient` to `getHTTPClient` in `http.go`
- Removed unnecessary else clause in `labels_test.go`
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/289
Co-authored-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Co-committed-by: Bo-Yi Wu <appleboy.tw@gmail.com >
2023-07-13 01:10:54 +00:00
cf92a979e2
refactor(register): refactor registration functions and improve logging ( #288 )
...
- Remove the else clause in the `registerInteractive` function, and unconditionally log "Runner registered successfully."
- Change the return value in the `doRegister` function from `nil` to `ctx.Err()`.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/288
Co-authored-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Co-committed-by: Bo-Yi Wu <appleboy.tw@gmail.com >
2023-07-12 14:12:16 +00:00
87058716fb
fix(register): refactor context usage in registration functions ( #286 )
...
- Add context parameter to `registerNoInteractive`, `registerInteractive`, and `doRegister` functions
- Remove the creation of a new context in `doRegister`, now using the passed context instead
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/286
Co-authored-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Co-committed-by: Bo-Yi Wu <appleboy.tw@gmail.com >
2023-07-12 13:11:55 +00:00
57ff1df6e0
config: default container workspace set to host path ( #279 )
...
The container workspace path is overwritten by the default host workspace path ($HOME/.cache/act).
Workaround:
```yaml
host:
workdir_parent: workspace
```
Ref: 34d15f21c2
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/279
Co-authored-by: Michael Santos <michael.santos@gmail.com >
Co-committed-by: Michael Santos <michael.santos@gmail.com >
2023-07-10 08:57:55 +00:00
3dcfd6ea3d
Run as cache server ( #275 )
...
This PR
- adds the `cache-server` command so act_runner can run as a cache server. When running as a cache server, act_runner only processes the requests related to cache and does not run jobs.
- adds the `external_server` configuration for cache. If specified, act_runner will use this URL as the ACTIONS_CACHE_URL instead of starting a cache server itself.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/275
Co-authored-by: Zettat123 <zettat123@gmail.com >
Co-committed-by: Zettat123 <zettat123@gmail.com >
2023-07-07 08:28:54 +00:00
f2629f2ea3
Add support for finding docker daemon from common socket paths ( #263 )
...
Caused by #260
act_runner will fail to start if user does not set `docker_host` configuration and `DOCKER_HOST` env. This PR adds the support for finding docker daemon from common socket paths so act_runner could detect the docker socket from these paths.
The `commonSocketPaths` is from [nektos/act](e60018a6d9/cmd/root.go (L124-L131)
)
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/263
Co-authored-by: Zettat123 <zettat123@noreply.gitea.com >
Co-committed-by: Zettat123 <zettat123@noreply.gitea.com >
2023-07-01 01:27:54 +00:00
cf48ed88ba
Revert supporting multiple default actions URLs and use github for exec by default ( #262 )
...
## ⚠️ BREAKING ⚠️
Follow https://github.com/go-gitea/gitea/pull/25581 and gitea/act#70 .
- Revert "Parse multiple default actions URLs (#200 )"
- Revert "fix defaultActionsUrls config for exec (#233 )"
- Use `https://github.com ` for exec by default.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/262
2023-06-30 07:53:18 +00:00
ccc27329dc
Improve the usage of docker_host
configuration ( #260 )
...
Follow #242 , #244
Fixes #258
Users could use `docker_host` configuration to specify which docker daemon will be used by act_runner.
- If `docker_host` is **empty**, act_runner will find an available docker host automatically.
- If `docker_host` is **"-"**, act_runner will find an available docker host automatically, but the docker host won't be mounted to the job containers and service containers.
- If `docker_host` is **not empty or "-"**, the specified docker host will be used. An error will be returned if it doesn't work.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/260
Co-authored-by: Zettat123 <zettat123@gmail.com >
Co-committed-by: Zettat123 <zettat123@gmail.com >
2023-06-30 04:00:04 +00:00
b0bd503b11
add token support for exec ( #247 )
...
allow to pass token from secrets
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/247
Reviewed-by: Jason Song <i@wolfogre.com >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Tomasz Duda <tomaszduda23@gmail.com >
Co-committed-by: Tomasz Duda <tomaszduda23@gmail.com >
2023-06-20 08:41:22 +00:00
34d15f21c2
Add option to configure workspace on host ( #238 )
...
Adds a new section to the configuration which is used
to control options when running in host mode.
The first option added is to allow configuration
of the location workspaces get created in.
Depends on ~~gitea/act#65~~
Will resolve #235
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/238
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Marius Zwicker <marius.zwicker@mlba-team.de >
Co-committed-by: Marius Zwicker <marius.zwicker@mlba-team.de >
2023-06-20 08:29:05 +00:00
32d29f0813
add ACT_EXEC ( #246 )
...
Add env variable to distinguish build run locally from remote one.
Co-authored-by: Jason Song <i@wolfogre.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/246
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Tomasz Duda <tomaszduda23@gmail.com >
Co-committed-by: Tomasz Duda <tomaszduda23@gmail.com >
2023-06-20 02:08:35 +00:00
2e2c0400c8
add --gitea-instance ( #245 )
...
add --gitea-instance to let user specify address of endpoint of exec
Related to https://gitea.com/gitea/act/pulls/68 . Both can be merged independently though.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/245
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Tomasz Duda <tomaszduda23@gmail.com >
Co-committed-by: Tomasz Duda <tomaszduda23@gmail.com >
2023-06-20 01:57:21 +00:00
054c8d912f
Move docker.host
to container.docker_host
( #244 )
...
Follow #242 .
Move `docker.host` to `container.docker_host`.
There are already some options for docker/container in `container`, so developers could get confused about where to add options.
It's breaking, but I think it's OK since `docker.host` was added just two days ago.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/244
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
2023-06-19 09:01:16 +00:00
9e4a5f7363
feat: improve Docker configuration and detection handling ( #242 )
...
- Pass `cfg` to `envcheck.CheckIfDockerRunning` function
- Add `Docker` struct to `config.go` for Docker configuration
- Update `config.example.yaml` with `docker` configuration options
- Modify `CheckIfDockerRunning` in `docker.go` to use Docker host from config if provided
Signed-off-by: appleboy <appleboy.tw@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/242
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-by: wxiaoguang <wxiaoguang@noreply.gitea.com >
Co-authored-by: appleboy <appleboy.tw@gmail.com >
Co-committed-by: appleboy <appleboy.tw@gmail.com >
2023-06-18 05:38:38 +00:00
ec38401097
Add ValidVolumes
config ( #226 )
...
Follow https://gitea.com/gitea/act/pulls/60 , https://gitea.com/gitea/act/pulls/64
This PR adds the `valid_volumes` configuration. `valid_volumes` is a sequence containing the volumes (including bind mounts) that can be mounted to the container. By default, `valid_volumes` is empty, which means that no volumes can be mounted. Users can specify multiple valid volumes and [glob](https://github.com/gobwas/glob ) is supported.
All volumes will be allowed when using `exec` to run workflows locally.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/226
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Zettat123 <zettat123@gmail.com >
Co-committed-by: Zettat123 <zettat123@gmail.com >
2023-06-16 06:07:48 +00:00
45bfe0a9b2
Accept empty file as config ( #241 )
...
Close #240
`yaml.Decoder.Decode` will return EOF when the root node is nil , see https://github.com/go-yaml/yaml/blob/v3/yaml.go#L125
While `yaml.Unmarshal` will accept it, see https://github.com/go-yaml/yaml/blob/v3/yaml.go#L162
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/241
Reviewed-by: Zettat123 <zettat123@noreply.gitea.com >
2023-06-15 05:40:37 +00:00
67b1363d25
Support changing labels ( #201 )
...
Implement proposal: https://github.com/go-gitea/gitea/issues/24540
Related:
- Protocol: https://gitea.com/gitea/actions-proto-def/pulls/9
- Gitea side: https://github.com/go-gitea/gitea/pull/24806
Co-authored-by: Jason Song <i@wolfogre.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/201
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: sillyguodong <gedong_1994@163.com >
Co-committed-by: sillyguodong <gedong_1994@163.com >
2023-06-15 03:59:15 +00:00
b21d476aca
Exit with Code 1 if registering a runner fails ( #228 )
...
### It's a "simple dirty fix" and I don't have any experiences with Go, so if this doesn't match your coding compliance, please adjust the code as needed
I'm using bash scripts to register a token
`./act_runner/act_runner register --no-interactive --name runner$number --instance http://localhost:3000 --token $token`
But when a token is invalid, the command still returns 0, which is not practical for automation.
A simple non-zero return would be more convenient for power users and developers.
Co-authored-by: Markus Löffler <markus.loeffler@netcare.de >
Co-authored-by: techknowlogick <techknowlogick@noreply.gitea.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/228
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com >
Co-authored-by: MarkusLoeffler01 <markusloeffler01@noreply.gitea.com >
Co-committed-by: MarkusLoeffler01 <markusloeffler01@noreply.gitea.com >
2023-06-09 17:34:23 +00:00
4bfbfec477
fix defaultActionsUrls config for exec ( #233 )
...
follow #200
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/233
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: a1012112796 <1012112796@qq.com >
Co-committed-by: a1012112796 <1012112796@qq.com >
2023-06-08 04:26:52 +00:00
fed01c9807
Parse multiple default actions URLs ( #200 )
...
Follow https://gitea.com/gitea/act/pulls/58
Resolve https://github.com/go-gitea/gitea/issues/24789
Co-authored-by: Jason Song <i@wolfogre.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/200
Reviewed-by: Jason Song <i@wolfogre.com >
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Zettat123 <zettat123@gmail.com >
Co-committed-by: Zettat123 <zettat123@gmail.com >
2023-06-06 04:03:02 +00:00
69c55ee003
refactor: daemon, config, and logging for better clarity ( #225 )
...
- Import "path", "runtime", "strconv", and "strings" packages in daemon.go
- Move "Starting runner daemon" log message to a different location
- Refactor log formatter initialization and add debug level caller information
- Split Config struct into separate Log, Runner, Cache, and Container structs with comments in config.go
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/225
Reviewed-by: Jason Song <i@wolfogre.com >
Co-authored-by: Bo-Yi Wu <appleboy.tw@gmail.com >
Co-committed-by: Bo-Yi Wu <appleboy.tw@gmail.com >
2023-06-05 13:11:23 +00:00
01ef57c667
fix artifactServerPath
and artifactServerAddr
config for exec ( #221 )
...
fix exec logic to make `actions/download-artifact` and `actions/upload-artifact` can be used.
example result:
```YML
name: test-artifact
on:
- push
- pull_request
jobs:
test-artifact-1:
name: test 1
runs-on: ubuntu-latest
steps:
- run: echo `date` | tee time.txt
- name: cache build result
uses: actions/upload-artifact@v3
with:
name: build-artifact
path: time.txt
retention-days: 1
test-artifact-2:
name: test 2
needs: test-artifact-1
runs-on: ubuntu-latest
steps:
- name: Retrieve saved build result
uses: actions/download-artifact@v3
with:
name: build-artifact
path: .
- run: ls -lh
- run: cat time.txt
```

Co-authored-by: Jason Song <i@wolfogre.com >
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/221
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: a1012112796 <1012112796@qq.com >
Co-committed-by: a1012112796 <1012112796@qq.com >
2023-06-05 08:51:44 +00:00