b2922e332a
feat(i18n): add windows service support and graceful shutdown
...
- Add native Windows service detection and signal handling
- Implement configurable shutdown timeout for graceful job completion
- Improve HTTP client with connection pooling and timeouts
- Propagate context through poller for proper shutdown coordination
- Add documentation for Windows service installation (NSSM and sc.exe)
- Add *.exe to .gitignore for Windows builds
2026-01-25 11:40:30 -05:00
GitCaddy Bot
ec9b323318
Rebrand from act_runner to gitcaddy-runner v1.0.0
...
Release / build (amd64, linux) (push) Successful in 1m15s
CI / build-and-test (push) Successful in 1m7s
Release / build (amd64, windows) (push) Successful in 1m3s
Release / build (amd64, darwin) (push) Successful in 1m8s
Release / build (arm64, darwin) (push) Successful in 46s
Release / build (arm64, linux) (push) Successful in 50s
Release / release (push) Successful in 26s
- Update module path: gitea.com/gitea/act_runner → git.marketally.com/gitcaddy/gitcaddy-runner
- Update all import paths across Go source files
- Update Makefile LDFLAGS and package references
- Update .goreleaser.yaml ldflags and S3 directory path
- Add comprehensive README with capacity configuration documentation
- Document troubleshooting for capacity feature and Docker detection
- Bump version to v1.0.0 for major rebrand
- All linting checks passed (fmt-check, go mod tidy, go vet)
2026-01-16 10:31:58 -05:00
GitCaddy
3addd66efa
Report runner capacity in capabilities JSON
CI / build-and-test (push) Failing after 20s
2026-01-15 13:06:30 +00:00
GitCaddy
0db86bc6a4
chore: Fix linter issues and update copyrights
...
CI / build-and-test (push) Failing after 55s
Release / build (amd64, darwin) (push) Has been cancelled
Release / build (amd64, linux) (push) Has been cancelled
Release / build (amd64, windows) (push) Has been cancelled
Release / build (arm64, darwin) (push) Has been cancelled
Release / build (arm64, linux) (push) Has been cancelled
Release / release (push) Has been cancelled
- Format Go files with gofmt
- Update copyrights to include MarketAlly
- Add MarketAlly copyright to files we created
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2026-01-14 09:41:16 +00:00
GitCaddy
0ba2e0c3d5
feat: Add CPU load monitoring and cleanup support
...
CI / build-and-test (push) Failing after 55s
- Add CPUInfo struct with load average and percentage
- Add detectCPULoad() for Linux, macOS, and Windows
- Add cleanup package for disk space management
- Handle RequestCleanup signal from server
- Report CPU load in capabilities to server
🤖 Generated with Claude Code
2026-01-14 08:48:54 +00:00
GitCaddy
b303a83a77
feat(capabilities): add visionOS SDK, PowerShell versions, working directory disk space
...
CI / build-and-test (push) Has been cancelled
Release / build (amd64, darwin) (push) Has been cancelled
Release / build (amd64, linux) (push) Has been cancelled
Release / build (amd64, windows) (push) Has been cancelled
Release / build (arm64, darwin) (push) Has been cancelled
Release / build (arm64, linux) (push) Has been cancelled
Release / release (push) Has been cancelled
- Add visionOS/xrOS SDK detection for Vision Pro development
- Add PowerShell version detection (pwsh and powershell) with actual versions
- Detect disk space on working directory filesystem (not just root)
- Useful for runners using external/USB drives for builds
- Add watchOS and tvOS suggested labels
- Refactor disk detection to accept path parameter
🤖 Generated with Claude Code (https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-11 20:32:23 +00:00
GitCaddy
e5fdaadbd2
feat: handle bandwidth test requests from server
...
CI / build-and-test (push) Successful in 8s
- Update to actions-proto-go v0.5.7 with RequestBandwidthTest field
- Add SetBandwidthManager method to Poller
- Check FetchTaskResponse for bandwidth test request
- Include bandwidth in capabilities sent to server
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2026-01-11 15:29:21 +00:00
GitCaddy
2c66de4df2
fix: run make fmt for code formatting
CI / build-and-test (push) Successful in 8s
Release / build (amd64, darwin) (push) Successful in 14s
Release / build (amd64, linux) (push) Successful in 13s
Release / build (amd64, windows) (push) Failing after 17s
Release / build (arm64, darwin) (push) Successful in 21s
Release / build (arm64, linux) (push) Successful in 5s
Release / release (push) Has been skipped
2026-01-11 07:11:49 +00:00
GitCaddy
9de33d4252
Send runner capabilities with FetchTask poll
...
CI / build-and-test (push) Failing after 8s
- Add envcheck import and capability detection to poller.go
- Send capabilities JSON with every FetchTask request
- Use GitCaddy actions-proto-go v0.5.6 with CapabilitiesJson field
2026-01-11 07:03:54 +00:00
garet90
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
rowan-allspice
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
Jason Song
23ec12b8cf
Bump act to v0.260.0 ( #522 )
...
release-tag / release-image (push) Failing after 0s
release-tag / goreleaser (push) Failing after 18s
checks / check and test (push) Successful in 7m52s
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
sillyguodong
12999b61dd
Reduce unnecessary DB queries for Actions tasks ( #219 )
...
release-tag / goreleaser (push) Failing after 4s
release-tag / release-image (push) Failing after 0s
checks / check and test (push) Successful in 3m39s
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
caicandong
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
caicandong
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
Jason Song
9c6499ec08
Fix panic when response is nil ( #105 )
...
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/105
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Jason Song <i@wolfogre.com >
Co-committed-by: Jason Song <i@wolfogre.com >
2023-04-06 21:51:46 +08:00
Jason Song
d139faa40c
Supports configuring fetch_timeout and fetch_interval. ( #100 )
...
Fix #99 .
Fix #94 .
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/100
Reviewed-by: Zettat123 <zettat123@noreply.gitea.io >
2023-04-06 10:57:36 +08:00
Jason Song
220efa69c0
Refactor to new framework ( #98 )
...
checks / check and test (push) Failing after 1m26s
- Adjust directory structure
```text
├── internal
│ ├── app
│ │ ├── artifactcache
│ │ ├── cmd
│ │ ├── poll
│ │ └── run
│ └── pkg
│ ├── client
│ ├── config
│ ├── envcheck
│ ├── labels
│ ├── report
│ └── ver
└── main.go
```
- New pkg `labels` to parse label
- New pkg `report` to report logs to Gitea
- Remove pkg `engine`, use `envcheck` to check if docker running.
- Rewrite `runtime` to `run`
- Rewrite `poller` to `poll`
- Simplify some code and remove what's useless.
Reviewed-on: https://gitea.com/gitea/act_runner/pulls/98
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: Jason Song <i@wolfogre.com >
Co-committed-by: Jason Song <i@wolfogre.com >
2023-04-04 21:32:04 +08:00