Commit Graph

7441 Commits

Author SHA1 Message Date
renovate[bot]
cf78d5dd7e fix(deps): update module gitlab.com/gitlab-org/api/client-go to v1.28.0 (#6069)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-06 01:52:14 +01:00
6543
8a8f9ad3aa Fix pipeline cancellation status handling and step state synchronization (#6011)
Co-authored-by: pnkcaht <samzoovsk19@gmail.com>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: Lauris B <lauris@nix.lv>
2026-02-05 21:41:05 +01:00
ArtEngr
1af1ef562c Add retry logic for CreatePipeline with backoff (#6067) 2026-02-05 15:29:52 +01:00
renovate[bot]
0f71f68c8c fix(deps): update module gitlab.com/gitlab-org/api/client-go to v1.27.0 (#6065)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-05 02:21:38 +01:00
renovate[bot]
1c07194a25 fix(deps): update module gitlab.com/gitlab-org/api/client-go to v1.26.0 (#6063)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-04 02:21:27 +01:00
6543
22c652fffb Translated using Weblate (Bavarian)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/bar/
2026-02-03 19:01:52 +00:00
6543
1e328e2ccf Translated using Weblate (German)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/de/
2026-02-03 19:01:52 +00:00
qwerty287
8b11ab56a9 Revert dynamic autofollow (#6061) 2026-02-03 20:01:45 +01:00
6543
52cb9f6c21 Document required forge methods (#6049) 2026-02-03 17:04:24 +01:00
Rafael Fontenelle
e9cf3a7988 Translated using Weblate (Portuguese)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/pt/
2026-02-03 13:49:24 +00:00
qwerty287
093484b2ba Translated using Weblate (German)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/de/
2026-02-03 13:49:23 +00:00
6543
56c9d96f3d Update Module Interaction Diagram (#6019)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2026-02-03 13:39:37 +01:00
Kevin Web
894ba77d94 Fix OAuth token refresh in webhook handling for Bitbucket and GitHub (#6059)
## Summary

Fixes #5590
Fixes #5713

This PR fixes an issue where webhook handling fails with "failure to parse hook" error when the user's OAuth access token has expired. The root cause is that the Bitbucket and GitHub forge implementations make API calls during webhook processing without first refreshing the OAuth token.

## Problem

When a webhook arrives from Bitbucket or GitHub, the `Hook()` function (and its helper functions) make API calls to fetch additional data (changed files, repo info, etc.). These API calls use the stored OAuth access token, which may have expired.

**Before this fix:**
1. Webhook arrives
2. `Hook()` makes API calls with potentially expired token
3. API call fails with "OAuth2 access token expired"
4. Error bubbles up as HTTP 400 "failure to parse hook"
5. `forge.Refresh()` is called later in `PostHook()` - but it's too late

**Example error from logs:**

`failure to parse hook error="OAuth2 access token expired. Use your refresh token to obtain a new access token."`


## Solution

Add `forge.Refresh()` calls before making API calls in the webhook handling code paths. This follows the same pattern already used by:
- Bitbucket Data Center forge (`server/forge/bitbucketdatacenter/bitbucketdatacenter.go`)
- Other code paths like `pipeline.Create()`, `cron.go`, etc.

### Changes

**Bitbucket** (`server/forge/bitbucket/bitbucket.go`):
- Added `forge.Refresh()` in `Hook()` before API calls

**GitHub** (`server/forge/github/github.go`):
- Added `forge.Refresh()` in `loadChangedFilesFromPullRequest()`
- Added `forge.Refresh()` in `getTagCommitSHA()`
- Added `forge.Refresh()` in `loadChangedFilesFromCommits()`

## Testing

- All existing Bitbucket and GitHub forge tests pass
- Tested in production environment with Bitbucket (waited for token expiry, webhook succeeded after fix)
2026-02-03 13:34:01 +01:00
renovate[bot]
57b2449bb1 fix(deps): update golang-packages (#6058)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-02-03 08:26:49 +01:00
Anbool
a1c89071f3 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (429 of 429 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/zh_Hans/
2026-02-02 18:25:36 +00:00
Kirill Isakov
2b2abdbb65 Translated using Weblate (Russian)
Currently translated at 100.0% (429 of 429 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/ru/
2026-02-02 18:25:36 +00:00
qwerty287
040f27bf87 Dynamic log following (#6036) 2026-02-02 19:25:30 +01:00
6543
25f10985f4 Update fast-xml-parser (#6057) 2026-02-02 17:47:01 +01:00
renovate[bot]
b22770adf3 fix(deps): update module gitlab.com/gitlab-org/api/client-go to v1.25.0 (#6053)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-02 03:09:47 +01:00
renovate[bot]
33ae17e7f2 chore(deps): lock file maintenance (#6054)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-02 03:09:32 +01:00
qwerty287
7c1e99ecee Translated using Weblate (German)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/de/
2026-02-01 15:44:15 +00:00
David Loewe
e2270ae95c Per-Workflow and Per-Workflow-Step badge generation (#5977)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Robert Kaussow <mail@thegeeklab.de>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-02-01 16:44:09 +01:00
renovate[bot]
df8dc5de33 chore(deps): update dependency simple-icons to v16.7.0 (#6051)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-01 09:19:24 +01:00
CrimsonFez
43272455ae Add Buildah plugin link (#6050) 2026-02-01 09:08:40 +01:00
Anbool
bfadce790d Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/zh_Hans/
2026-01-31 17:04:32 +00:00
renovate[bot]
6a33483647 fix(deps): update module github.com/google/go-github/v81 to v82 (#6047)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-01-31 08:52:23 +01:00
renovate[bot]
dfb77fb4c2 chore(deps): update docs npm deps non-major (#6045)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: qwerty287 <qwerty287@posteo.de>
2026-01-31 08:47:12 +01:00
qwerty287
b52291ef46 Refresh token before forge calls (#6035) 2026-01-31 08:27:27 +01:00
renovate[bot]
aa783e1afb chore(deps): update dependency @vueuse/core to v14.2.0 (#6048)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-31 08:09:32 +01:00
renovate[bot]
a721feb262 fix(deps): update dependency vue-router to v5 (#6046)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-31 08:02:44 +01:00
renovate[bot]
30a3bb1d08 chore(deps): update dependency vue-tsc to v3.2.4 (#6044)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-31 02:27:56 +01:00
renovate[bot]
40e5c700e6 fix(deps): update golang-packages (#6042)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-30 01:36:57 +01:00
qwerty287
39acb2a4be Render MD in pipeline titles (#5999)
Co-authored-by: 6543 <6543@obermui.de>
2026-01-29 14:27:55 +01:00
renovate[bot]
c8966b734d fix(deps): update golang-packages (#6040)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-29 03:40:27 +01:00
qwerty287
f462f787dd Add Homebrew package (#6037) 2026-01-28 18:32:00 +01:00
6543
8c4dc5b419 Translated using Weblate (Bavarian)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/bar/
2026-01-28 10:53:27 +00:00
6543
4ac907d3c2 Translated using Weblate (Bavarian)
Currently translated at 99.7% (426 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/bar/
2026-01-28 10:23:38 +00:00
Kirill Isakov
7cb318c483 Translated using Weblate (Russian)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/ru/
2026-01-28 09:24:21 +00:00
qwerty287
f6f63194f6 Translated using Weblate (German)
Currently translated at 100.0% (427 of 427 strings)

Translation: Woodpecker CI/UI
Translate-URL: https://translate.woodpecker-ci.org/projects/woodpecker-ci/ui/de/
2026-01-28 09:24:21 +00:00
6543
cd62ab5f3e Local backend: cleanup generated script for cmd.exe shell (#6029) 2026-01-28 07:10:29 +01:00
renovate[bot]
8b6c814666 fix(deps): update module gitlab.com/gitlab-org/api/client-go to v1.21.0 (#6028)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-28 07:06:51 +01:00
6543
47ffb3209e Local backend: setup clone step respects context (#6030) 2026-01-28 06:47:18 +01:00
6543
6a76851884 fifo test cleanup changed value (#6031) 2026-01-28 06:46:58 +01:00
6543
4edfefe5d6 Simplify and Fix server task queue (#6017) 2026-01-27 15:27:03 +02:00
Sam Richard
f202470c7d fix(agent): workflow runner use shutdown context (#6021)
Co-authored-by: 6543 <6543@obermui.de>
2026-01-27 02:42:35 +01:00
renovate[bot]
d7e2a576dc fix(deps): update golang-packages (#6026)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-27 02:28:14 +01:00
Sam Richard
b1cbd961b2 Fix/docker kill container on cancel (#6018)
## Fix: kill docker container on pipeline cancellation

### What was happening
When a pipeline step was canceled (e.g. manual cancel or agent shutdown), the Docker backend would stop waiting for the container but **would not actively terminate it**.  
This caused containers running long-lived commands (like `sleep`, `tail -f`, servers, etc.) to continue running in the background.

## Related Issue
Closes #6016 

### What this PR changes
This PR ensures that **when the step context is canceled**, the running Docker container is **immediately killed**.

- Listens to `ctx.Done()` in `WaitStep`
- Sends a `ContainerKill` using a non-cancelable context
- Preserves existing behavior for normal container exit
- Prevents orphaned containers after pipeline cancellation

### Why this approach
Docker containers do not automatically stop when the caller context is canceled.  
Explicitly killing the container on `ctx.Done()` guarantees correct cleanup and matches expected CI behavior.
2026-01-27 00:19:44 +01: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
renovate[bot]
e332da9f3b chore(deps): lock file maintenance (#6014)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 01:48:59 +01:00