87 Commits
Author SHA1 Message Date
6543andGitHub 9b18a90a59 [Backport] Lint privileged plugin match and allow to be set empty (#4084) 2024-09-05 20:30:03 +03:00
qwerty287andGitHub a360563fad Warn if using secrets/env with plugin (#4027) (#4039) 2024-08-16 17:08:06 +02:00
6543andGitHub 764329ed1d Make sure plugins only mount the workspace base in a predefinde location (#3933) 2024-07-18 22:52:22 +02:00
AnbratenandGitHub ceb14cadc5 Fix deploy task env (#3878) 2024-07-07 13:43:07 +02:00
28e982fffb Global and organization registries (#1672)
Co-authored-by: Anbraten <6918444+anbraten@users.noreply.github.com>
2024-07-03 06:33:11 -07:00
AnbratenandGitHub 2fa9432ef8 Cleanup state reporting (#3850) 2024-07-01 11:20:55 +02:00
6543andGitHub 4dcdebd786 Let webhook pass on pipeline parsion error (#3829) 2024-06-26 15:07:19 +02:00
4ec046e415 Spellcheck "server/*" (#3753)
Co-authored-by: Anbraten <6918444+anbraten@users.noreply.github.com>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2024-06-04 08:30:54 +02:00
Robert KaussowandGitHub 89e100cfd1 Add godot linter to harmonitze toplevel comments (#3650) 2024-05-13 22:58:21 +02:00
qwerty287andGitHub 8b785be645 Fix parent pipeline number env on restarts (#3683) 2024-05-06 11:47:02 +02:00
e6bda2c2b3 Support github deploy task (#3512)
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2024-05-02 18:56:19 +02:00
d494b6a959 Use forge from db (#1417)
This is the first step towards support for multiple forges (#138). It
inserts a forge using the currently existing env varaibles into db and
uses this forge from db later on in all places of the code.

closes #621

addresses #138 

# TODO
- [x] add forges table
- [x] add id of forge to repo
- [x] use forge of repo
- [x] add forge from env vars to db if not exists
- [x] migrate repo.ForgeID to the newly generated forge
- [x] support cache with forge from repo
- [x] maybe add forge loading cache? (use LRU cache for forges, I expect
users to have less than 10 forges normally)

---------

Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2024-04-16 08:04:55 +02:00
00f0fcd416 Rework addons (use rpc) (#3268)
Co-authored-by: Anbraten <6918444+anbraten@users.noreply.github.com>
2024-04-15 10:04:21 +02:00
Robert KaussowandGitHub b4cd1da29c Apply skip ci filter only on push events (#3612)
Fixes: https://github.com/woodpecker-ci/woodpecker/issues/3606
2024-04-14 15:25:28 +03:00
e57a09a404 Update pipeline state on server as a whole on approval (#3504)
We can not just update some records for steps, as we want the pipeline
engine as single source of truth but not manage the state.
And the server should only manage the state but not how pipelines work.

We can match the pipeline but neither workflows or steps 1:1, so we
"update" them as a whole by deleting existing workflow and step data and
insert the new info from engine.

close   #3494
close  #3472

---------
*Sponsored by Kithara Software GmbH*

---------

Co-authored-by: Robert Kaussow <xoxys@rknet.org>
2024-03-18 20:07:45 +01:00
6543andGitHub 43264a5f8e rename stepID to workflowID to reflect value (#3502)
address https://github.com/woodpecker-ci/woodpecker/issues/3494#issuecomment-2001986597
2024-03-18 15:21:26 +01:00
Robert KaussowandGitHub a779eed3df Enable golangci linter gomnd (#3171) 2024-03-15 18:00:25 +01:00
qwerty287andGitHub cb3efd2cd9 Simplify store interfaces (#3437)
Use `store.Store` interface if possible.
2024-02-25 10:37:10 +01:00
qwerty287andGitHub 5b0430ab4a Fix storing steps (#3431)
Closes https://github.com/woodpecker-ci/woodpecker/issues/3427
2024-02-25 08:16:14 +01:00
16dca0abc2 Store workflows/steps for blocked pipeline (#2757)
This stores workflows and steps to DB even if it is not yet approved and
thus blocked.

I'm not really happy with this, because even though it is stored, it
must parse the pipeline again and set back the original UUID. If you
have any ideas how to fix/improve this just comment.

In addition, this allows to view step list and side panel for approved
pipelines, https://github.com/woodpecker-ci/woodpecker/pull/2345 is
partially not longer necessary.

Closes https://github.com/woodpecker-ci/woodpecker/issues/895

---------

Co-authored-by: 6543 <6543@obermui.de>
2024-02-22 15:48:29 +01:00
qwerty287andGitHub 0c9bbf91a3 Do not alter secret key upper-/lowercase (#3375) 2024-02-20 14:20:25 +01:00
AnbratenandGitHub 82e1ce937c Refactor internal services (#915) 2024-02-11 18:42:33 +01:00
qwerty287andGitHub f369d2c543 Lint for event filter and deprecate exclude (#3222)
Closes https://github.com/woodpecker-ci/woodpecker/discussions/2174

- return bad habit error if no event filter is set
- If this is applied, it's useless to allow `exclude`s on events.
Therefore, deprecate it together with `include`s which should be
replaced by `base.StringOrSlice` later.
2024-02-10 17:33:05 +01:00
AnbratenandGitHub 0b91317cde Fix linter (#3354) 2024-02-08 22:49:07 +01:00
9df572ef31 Add release event trigger (#3226)
Supersedes #764 

Bitbucket does not support release webhooks.

---------

Co-authored-by: Patrick Schratz <patrick.schratz@gmail.com>
2024-01-30 17:39:00 +01:00
AnbratenandGitHub 0b5eef7d1e Improve secret availability checks (#3271) 2024-01-27 20:59:44 +01:00
qwerty287andGitHub 5e2f7d81b3 Clean up models (#3228) 2024-01-22 07:56:18 +01:00
6543andGitHub 7b29d1da49 Make PipelineConfig unique again (#3215)
fix https://github.com/woodpecker-ci/woodpecker/issues/3093

reverts https://github.com/woodpecker-ci/woodpecker/pull/3128
2024-01-18 23:50:29 +02:00
qwerty287andGitHub 001b5639a6 Use assert for test (#3201)
instead of `if`s
2024-01-14 19:33:58 +01:00
qwerty287andGitHub b9f6f3f9fb Replace goimports with gci (#3202)
`gci` seems to be much more strict.
2024-01-14 18:22:06 +01:00
qwerty287andGitHub 45bf8600ef Remove multipart logger (#3200) 2024-01-14 10:54:02 +01:00
Robert KaussowandGitHub f813badcf9 Enable golangci linter contextcheck (#3170)
Split out from https://github.com/woodpecker-ci/woodpecker/pull/2960
2024-01-11 22:15:15 +01:00
b0a2b1cf2d Lowercase all log strings (#3173)
from #3161

---------

Co-authored-by: 6543 <6543@obermui.de>
2024-01-11 19:17:07 +01:00
Robert KaussowandGitHub 7756c60a33 Enable golangci linter stylecheck (#3167)
This PR only fixes error string formatting, log message strings are
still mixed upper/lowercase (see
https://github.com/woodpecker-ci/woodpecker/pull/3161#issuecomment-1885140649)
and I'm not aware of a linter to enforce it.
2024-01-10 22:56:42 +01:00
qwerty287andGitHub 00df53e941 Clean up logging (#3161)
- use `Err` method instead of format strings
- use `Msg` if no format string is used
2024-01-10 20:57:12 +01:00
qwerty287andGitHub 12c40eb957 Enable gocritic and don't ignore globally (#3159)
Use `nolint` directives instead.

From #2960
2024-01-10 15:34:44 +01:00
qwerty287andGitHub 1b380ff4b4 Enable nolintlint (#3158) 2024-01-10 12:11:18 +01:00
768fd71841 Enable some linters (#3129)
Mostly those that did not require much work.

From #2960

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-01-09 21:35:37 +01:00
6543andGitHub a63135363b Step status update dont set to running again once it got stoped (#3151)
Because of the check `if step.Stopped == 0`

without the check there are edgecases where could be the case a stoped
steped can be markt as running again, witch is wrong.

I do remember we have "running" steps indefinetly in cancled pipelines.
This could be the fix, i just did not test that specific.

Anyway the func hat a good testcoverage ... so just look at the tests

_Source:
https://github.com/woodpecker-ci/woodpecker/pull/3143#discussion_r1446138088_
2024-01-09 18:34:55 +01:00
6543andGitHub cd59a85230 Use name in backend types instead of alias (#3142) 2024-01-09 15:22:59 +01:00
a37af3eeac Add imports checks to linter (#3056)
supersedes https://github.com/woodpecker-ci/woodpecker/pull/874

---------

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-12-29 21:19:42 +01:00
619858e0e9 Ignore pipelines without config (#2949)
Co-authored-by: 6543 <6543@obermui.de>
2023-12-21 11:13:25 +01:00
Robert KaussowandGitHub 23f58fc07a Fix broken gated repos (#2959)
Fixes a bug introduced in
https://github.com/woodpecker-ci/woodpecker/pull/2923. I'll also try to
add a test case.
2023-12-17 18:44:48 +02:00
6543andGitHub 1f8b3b5e1b Only update pipelineStatus in one place (#2952) 2023-12-15 10:03:05 +01:00
Lauris BHandGitHub c6ce23e933 Allow to restart pipelines that has warnings (#2939) 2023-12-13 14:11:05 +01:00
6de5922408 Fix skipped pipelines model (#2923)
Fixes: https://github.com/woodpecker-ci/woodpecker/issues/2901

---------

Co-authored-by: Lauris BH <lauris@nix.lv>
2023-12-12 22:30:52 +02:00
adb2c82790 Update go module path for major version 2 (#2905)
https://go.dev/doc/modules/release-workflow#breaking

Fixes https://github.com/woodpecker-ci/woodpecker/issues/2913 fixes
#2654
```
runephilosof@fedora:~/code/platform-woodpecker/woodpecker-repo-configurator (master)$ go get go.woodpecker-ci.org/woodpecker@v2.0.0
go: go.woodpecker-ci.org/woodpecker@v2.0.0: invalid version: module contains a go.mod file, so module path must match major version ("go.woodpecker-ci.org/woodpecker/v2")
```

---------

Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2023-12-08 08:15:08 +01:00
qwerty287andGitHub 849b02a433 Fix pipeline-related environment (#2876)
closes https://github.com/woodpecker-ci/woodpecker/issues/2672

pipeline model must be persisted first to have some fields like `Number`
and `ID`
2023-11-26 19:59:36 +01:00
qwerty287andGitHub 342b25826c Rename link to url (#2812)
As of https://woodpecker-ci.org/docs/next/usage/terminiology#conventions
2023-11-14 17:12:12 +01:00
5a7b689e30 Switch to go vanity urls (#2706)
Co-authored-by: Anbraten <anton@ju60.de>
2023-11-07 08:04:33 +01:00