708 Commits
Author SHA1 Message Date
qwerty287andRobert Kaussow edf5335736 k8s: allow to disable runtime class name backend option (#7046)
Co-authored-by: Robert Kaussow <xoxys@rknet.org>
2026-08-20 13:29:09 +02:00
qwerty287andLauris B c0bb2e1465 Allow to add custom message to manual pipelines (#6973)
Co-authored-by: Lauris B <lauris@nix.lv>
2026-08-20 09:17:28 +02:00
confusedsushiand6543 af6c4ce9c8 Add hidden decode-base64 agent command for Windows local backend (#7023)
Co-authored-by: 6543 <6543@obermui.de>
2026-08-20 04:34:29 +02:00
042b9536e0 Add pipeline log download endpoint (#6876)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Claude <claude@anthropic.com>
2026-08-17 22:34:10 +02:00
Lauris B dc1444f793 Reject incompatible gRPC proto version agents (#7028) 2026-08-17 21:47:27 +02:00
29de0824b7 feat: allow configuring allowed orgs per forge (#6874)
Signed-off-by: Daniel Gerber <394442-gerbsen@users.noreply.gitlab.com>
Co-authored-by: Daniel Gerber <394442-gerbsen@users.noreply.gitlab.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-08-10 15:02:33 +02:00
Oleksandr Kuksenkoandqwerty287 d8448634d1 agent: retry connect on DeadlineExceeded, not just Unavailable (#6975)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2026-08-10 08:54:42 +02:00
qwerty287 26a6818973 Rename WOODPECKER_GRPC_VERIFY to WOODPECKER_GRPC_SKIP_VERIFY and fix docu (#6947) 2026-08-05 18:00:32 +02:00
qwerty287 608d587bf1 Use spaces in MD (#6923) 2026-07-31 14:16:50 +02:00
Chanhyo Jung 63895a7197 Document CLI configuration (#6899) 2026-07-28 11:57:55 +02:00
Darafei Praliaskouski 0146c139a2 Fix pipeline queue default template data (#6906)
Signed-off-by: Darafei Praliaskouski <me@komzpa.net>
2026-07-27 22:08:02 +02:00
68c270010d Make grpc secret autogenerated (#6845)
Co-authored-by: OpenAI Codex <codex@openai.com>
Co-authored-by: Claude <claude@anthropic.com>
2026-07-15 21:13:49 +02:00
Rayan Salhabandcyphercodes 2bc7837703 feat(server): add unix socket permission option (#6839)
Co-authored-by: cyphercodes <cyphercodes@users.noreply.github.com>
2026-07-13 21:28:47 +02:00
renovate[bot]andlnx01 adbc365be3 Update module github.com/cenkalti/backoff/v6 to v7 (#6812)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-04 07:31:37 +02:00
6543andqwerty287 8ff62b2f9e Rework pipeline data structure: Release & Tag (#6774)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2026-06-27 17:56:45 +02:00
6543 41181ab401 Server can move pipeline parsing into background on long creation times (#6781) 2026-06-26 15:16:56 +03:00
Weslley Rocha e3f827bd67 Add CI_COMMIT_PULL_REQUEST_DRAFT environment variable (#6778) 2026-06-26 11:16:54 +02:00
6543andLauris B c8b0c3a571 Make LogEntry Buffer configurable for agent (#6773)
Co-authored-by: Lauris B <lauris@nix.lv>
2026-06-26 10:17:06 +02:00
6543 98ecce4bb1 Refactor to inject store and context into server scheduler (#6755) 2026-06-21 17:06:06 +03:00
833d0374b3 Update module github.com/cenkalti/backoff/v5 to v6 (#6752)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2026-06-20 19:26:23 +02:00
dd7a5b6c48 Add workflow concurrency limit option (#6671)
Co-authored-by: Lauris B <lauris@nix.lv>
Co-authored-by: 6543 <6543@obermui.de>
2026-06-20 12:33:37 +02:00
Eric Zhou dc916185d7 Add Prometheus metrics for pipeline step duration and failures (#6738)
- Add `WOODPECKER_STEP_LEVEL_METRICS` server option.
- Move server metrics collection into the `server/metric`.
- Export step-level Prometheus metrics when enabled:
  - `woodpecker_step_failures_total{pipeline,repo,step}`
  - `woodpecker_step_duration_seconds{pipeline,repo,step}`
2026-06-18 22:28:17 +02:00
6543 afb5820a4d Support Unix Sockets (#6721) 2026-06-14 18:44:04 +02:00
6543 c776564285 Only try to load .env if it exists (#6714) 2026-06-12 20:43:14 +02:00
6543 2aaf487a39 Surface .env load errors (#6707)
We drop errors loading from loading `.env` in the past.
This is hard to debug and can cause confusion, so we change it with this.
2026-06-08 10:21:45 +02:00
6543andClaude 0fa872e276 Add more tests in areas not well covered (#6696)
Co-authored-by: Claude <claude@anthropic.com>
2026-06-05 14:49:38 +02:00
guillaumemandGuillaumeMeurillon e630e0a394 Improve slow user authorization if many orgs/repos (#5665)
Co-authored-by: GuillaumeMeurillon <MeurillonGuillaume@users.noreply.github.com>
2026-06-01 11:37:31 +02:00
qwerty287andAkash Kumar 4df2e41150 Add commit timestamp env vars (#6670)
Co-authored-by: Akash Kumar <meakash7902@gmail.com>
2026-05-31 12:23:53 +02:00
qwerty287 f7f0a9b561 Show correct default paths in UI (#6665) 2026-05-28 14:08:36 +02:00
6543 d0cda7b59b Cleanup e2e test setup (#6480) 2026-05-28 13:33:38 +02:00
John Olheiser 23102152fb Add config to change default pipeline config paths and extensions (#6580)
Signed-off-by: jolheiser <git@jolheiser.com>
2026-05-26 19:57:39 +02:00
4d7f6eacd4 Update golang-packages (#6637)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-05-25 10:59:43 +02:00
qwerty287 d05c597374 View warning if admin is configured at env level (#6600) 2026-05-19 10:27:44 +02:00
qwerty287 c64fa98b6e Add timezone support for crons (#6597) 2026-05-17 20:26:37 +02:00
Eric Zhou 8905b8fa53 Add CI_PIPELINE_RERUNS environment variable (#6588) 2026-05-17 19:13:23 +02:00
6543 11f74a6291 format with gofumpt v0.10.0 (#6573) 2026-05-14 14:02:43 +02:00
e4dfbf86c6 Refactor server/.../step_builder into pipeline/.../builder (#3967)
Extract the `step_builder` from the server to the pipeline package.
This cleans the interfaces / structure and will allow us to re-use it in the cli to correctly support pipeline execution (things like `depends_on` support).

Co-authored-by: Anton Bracke <anton.bracke@fastleansmart.com>
Co-authored-by: 6543 <6543@obermui.de>
2026-05-13 19:08:38 +02:00
wucm667 a7a123dc8b fix(agent): persist agent ID after auth to prevent crashloop duplicates (#6543)
Signed-off-by: wucm667 <stevenwucongmin@gmail.com>
2026-05-07 02:12:15 +02:00
6543 ea071606b2 Make agent reconnect retry timeout configurable (#6470) 2026-04-23 17:35:39 +02:00
6543andqwerty287 ae19a87b71 Handle re-created forge repos gracefully (#6370)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2026-04-23 10:02:09 +02:00
6543 950534751b Add WOODPECKER_FORCE_IGNORE_SERVICE_FAILURE config to preserve non breaking behavior by default (#6448) 2026-04-17 17:10:03 +02:00
6543 66e221b4b1 Move skip pipeline by commit message into pipeline/frontend package (#6437)
and add some custom types for events and failure in metadata package.

no logic change at all.
2026-04-15 09:50:03 +02:00
6543 acc68e509b Init server/scheduler package and use it as proxy for queue&pubsub (#6418) 2026-04-10 11:03:40 +03:00
Ahmad Kamamji f544242cb0 fix: add connection timeout and graceful shutdown to agent RPC client (#6414) 2026-04-10 04:19:14 +02:00
DaCheng Zhou f644e0d49c refactor(server): unify api parameters to snake case (#6404) 2026-04-08 08:34:18 +02:00
6543 a7739a2bb7 Fix workflow beeing skipped and marked as failed when agent starts before server (#6361)
When the agent started before the server was available, it retried the connection as expected. However, once the server came up and a workflow was picked up, the pipeline would immediately fail without running any steps — the agent logs showed `workflow context done` firing instantly after `received execution`.

The root cause was a package-level `shutdownCtx` shared across retry iterations. On each failed attempt, `stopAgentFunc` stamped it with a 5-second timeout — starting the clock immediately. By the time the agent successfully connected and received a workflow, `workflowCtx` was derived from this already-expired context, so execution failed before Docker even started a container.

The fix removes the global mutable shutdown context and the `stopAgentFunc` indirection. Instead, `runner.Run()` no longer accepts a `shutdownCtx` parameter — it creates a fresh one locally only when needed for the `Done()` fallback call. The healthcheck server shutdown does the same. This makes the lifetime of each shutdown window explicit and local.
2026-03-31 19:56:39 +02:00
qwerty287 2de59621fb Add netrc option for config/registry extension (#6333) 2026-03-31 17:39:28 +02:00
2230e01d78 Support one-shot agent execution mode (#6150)
This supports the use case of having the agent itself be ephemeral, which may be useful in various situations, including use of the local backend.

Co-authored-by: Max Anurin <theanurin@gmail.com>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: 6543 <6543@obermui.de>
2026-03-31 17:36:51 +02:00
qwerty287 8e7096fcf6 Deprecate commit avatar envs (#6356) 2026-03-31 13:23:39 +02:00
6543 662575630a Refactor server/pubsub into interface (#6318) 2026-03-30 19:32:44 +02:00