Commit Graph

670 Commits

Author SHA1 Message Date
6543
ea071606b2 Make agent reconnect retry timeout configurable (#6470) 2026-04-23 17:35:39 +02:00
6543
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
cliffmccarthy
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
qwerty287
8174778871 Separate cron field (#6346) 2026-03-30 16:24:51 +02:00
Sim-hu
4b4ef5e591 Show Woodpecker version on pipeline details (#6316)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2026-03-29 17:48:44 +02:00
qwerty287
79cc07265e Unify import aliases (#6328)
Co-authored-by: 6543 <6543@obermui.de>
2026-03-28 15:45:23 +01:00
Morten Frydensberg
def714cecd Add external secret extension implementation (#6252)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-03-26 23:58:34 +01:00
qwerty287
3c5b24443b Fix extension flag names (#6329) 2026-03-26 12:45:40 +01:00
qwerty287
31722dd83e Rename extension env vars (#6326) 2026-03-25 21:42:43 +01:00
qwerty287
3156cd687c Fix license headers (#6205) 2026-03-23 11:54:07 +01:00
6543
eab8c09d0a Have distinct differense between skipped and canceled status (#6267) 2026-03-20 16:57:34 +01:00
6543
09327abd03 Creating new engine runtime now requires backend as argument (#6268) 2026-03-20 13:44:24 +01:00
qwerty287
17dcc86942 Allow to cancel on failure (#6158) 2026-03-19 13:41:44 +01:00
6543
2bc56896f3 Refactor so storage detects if Insert fails because of unique constraint (#6259) 2026-03-19 13:17:56 +01:00
qwerty287
1643e77286 Add Container Registry credential extension (#5993)
Co-authored-by: techknowlogick <techknowlogick@gitea.com>
Co-authored-by: Anbraten <6918444+anbraten@users.noreply.github.com>
Co-authored-by: 6543 <6543@obermui.de>
2026-03-18 22:55:38 +01:00
confusedsushi
89fd89449c possibillity to configure the maximum number of lines to show in a pi… (#6250) 2026-03-16 22:00:40 +01:00
qwerty287
480f673ff7 Fix status merging with skipped pipelines (#6176) 2026-03-02 15:35:43 +01:00
6543
57ac1cb6f5 refactor: use upstream slices.Concat and remove utils.MergeSlices (#6185)
a small refactor since the upstream core lib change is now long merged and adopted
2026-03-02 14:30:37 +01:00
6543
a63b93f5ee Refactor pipeline engine (#6073)
restructure pipeline/*.go to use submodules

<!-- https://claude.ai/chat/1b8965d7-5bca-42c7-86b4-48c2d645c362 -->

- pipeline/error.go -> pipeline/errors/...
- pipeline/pipeline.go#Runtime -> pipeline/runtime/runtime.go
- pipeline/pipeline.go#execAll -> pipeline/runtime/executor.go
- pipeline/shutdown.go -> pipeline/runtime/shutdown.go
- pipeline/logger.go ->pipeline/logging
- pipeline/tracer.go -> pipeline/tracing
- pipeline/pipeline.go#State -> state/state.go
2026-02-13 11:56:43 +01:00
Martin Schmidt
5034dd2aba Added cancel info so one can see why it was cancelled (#6072)
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-02-06 17:11:02 +01:00
6543
4edfefe5d6 Simplify and Fix server task queue (#6017) 2026-01-27 15:27:03 +02:00
6543
3786077c07 Update Architecture: move pipeline/rpc => rpc & server/{grpc => rpc} (#6012) 2026-01-26 21:25:38 +01:00
qwerty287
ff6895308a Support exclusive extensions (#5978)
Co-authored-by: 6543 <6543@obermui.de>
2026-01-26 16:13:00 +01:00
qwerty287
bd8e2f350e Use require to exit tests (#5998) 2026-01-22 09:41:20 +01:00
Anbraten
1d9c8f00bd Use repo-user for api call of cron (#5967) 2026-01-14 11:49:29 +01:00
Anbraten
503bd7bcfb Add cli contexts (#5929) 2026-01-11 15:32:00 +01:00
qwerty287
8db8f49d16 Allow to add a note to secrets (#5898)
Co-authored-by: 6543 <6543@obermui.de>
2026-01-10 13:06:27 +01:00
qwerty287
00790bfa67 Custom vars for crons (#5897) 2025-12-28 22:15:29 +02:00
qwerty287
8c231aa99d Allow to disable a cron (#5896)
Co-authored-by: 6543 <6543@obermui.de>
2025-12-24 09:02:03 +00:00
Anbraten
cdefb2842c Migrate to maintained tink-go (#5886) 2025-12-20 09:23:09 +01:00
6543
bbe7980024 Makefile: add target to generate man pages (#5810) 2025-12-01 16:14:38 +01:00
qwerty287
6b7899ea51 Fix version string in log (#5727) 2025-11-07 08:04:30 +01:00
Utkarsh9571
b2b4583de0 feat(agent): log agent version on startup (#5724)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2025-11-06 16:58:36 +01:00
qwerty287
26fc51bfd0 Fix secret on new forge (#5715)
closes #5677
2025-11-05 01:06:11 +01:00
renovate[bot]
09e8d32353 chore(deps): update dependency golangci/golangci-lint to v2.6.0 (#5702)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2025-11-03 15:22:20 +01:00
qwerty287
1019d85065 Add log service addon (#5507)
Co-authored-by: Robert Kaussow <xoxys@rknet.org>
Co-authored-by: Robert Kaussow <mail@thegeeklab.de>
2025-10-21 08:40:30 +02:00
Anbraten
045a22209a Support multiple users with same login name but different forges (#5612)
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Robert Kaussow <mail@thegeeklab.de>
2025-10-21 08:19:09 +02:00
Marcus Ramberg
647fa843f6 Modernize a couple of loops, fix incorrect function docs (#5637) 2025-10-14 13:00:19 +02:00
Robert Kaussow
8771f57cb1 Add repo filter options to GetRepos api (#5631)
Co-authored-by: Anbraten <6918444+anbraten@users.noreply.github.com>
2025-10-12 16:16:52 +02:00
Gusted
650d6bd432 chore(deps): drop github.com/gorilla/securecookie (#5609) 2025-10-06 23:43:29 +02:00
Marcus Ramberg
ff32909ae3 Improve error message when agent fails to connect (#5587)
Co-authored-by: Robert Kaussow <mail@thegeeklab.de>
2025-10-01 20:25:39 +02:00