Commit graph

218 commits

Author SHA1 Message Date
Robert Kaussow
aaf11afef7
Fix golangci-lint version pinning (#3521) 2024-03-20 15:28:10 +01:00
Robert Kaussow
1a3eed232f
Temp pin golangci version in makefile (#3520)
Looks like something is broken in v1.57.x, and I don't think that's
something that can be fixed on the end-user side:

https://ci.woodpecker-ci.org/repos/3780/pipeline/14131/33

```
WARN [runner] Can't process result by autogenerated_exclude processor: can't filter issue result.Issue{FromLinter:"contextcheck", Text:"Function `Start$1->runCron` should pass the context parameter", Severity:"", SourceLines:[]string(nil), Replacement:(*result.Replacement)(nil), Pkg:(*packages.Package)(0xc001871980), LineRange:(*result.Range)(nil), Pos:token.Position{Filename:"", Offset:0, Line:0, Column:0}, HunkPos:0, ExpectNoLint:false, ExpectedNoLintLinter:""}: no file path for issue 
WARN [runner] Can't process result by nolint processor: can't filter issue result.Issue{FromLinter:"contextcheck", Text:"Function `Start$1->runCron` should pass the context parameter", Severity:"", SourceLines:[]string(nil), Replacement:(*result.Replacement)(nil), Pkg:(*packages.Package)(0xc001871980), LineRange:(*result.Range)(nil), Pos:token.Position{Filename:"", Offset:0, Line:0, Column:0}, HunkPos:0, ExpectNoLint:false, ExpectedNoLintLinter:""}: no file path for issue 
WARN [runner/source_code] Failed to get line 0 for file : failed to get file  lines cache: can't get file  bytes from cache: can't read file : open : no such file or directory 
```
2024-03-20 14:02:37 +01:00
Konstantin Demin
db624f8c21
build: apply "grpcnotrace" go build tag (#3448)
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2024-02-28 07:28:48 +01:00
qwerty287
fc1c4d9b11
Update UI building in Makefile (#3250) 2024-01-22 09:10:28 +02:00
6543
9e862ae44b
Build tarball for distribution packages (#3244)
close  #3219

and also make sure the `binaries` & `docker` workflow will run on tag
events, see https://ci.woodpecker-ci.org/repos/3780/pipeline/12358
2024-01-21 22:18:20 +01:00
qwerty287
f56f9cb1c0
Cleanups + prefer .yaml (#3069)
Co-authored-by: Robert Kaussow <xoxys@rknet.org>
2024-01-11 18:43:54 +01:00
6543
2e26a526b1
Add make clean-all (#3152)
Add make target, witch delete all generated stuff too

---------

Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2024-01-09 17:53:56 +01:00
6543
567e83350c
Fix make release-server-xgo in CI and localy (#3072)
fix regressions of:
-  #3010
-  #3065

and make `make release-server-xgo` work on a manual exec (not run by ci)
2023-12-29 22:31:34 +01:00
qwerty287
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
qwerty287
af513b5a30
Fix build output paths (#3065)
closes https://github.com/woodpecker-ci/woodpecker/issues/1766
2023-12-29 20:30:20 +01:00
6543
eefa64e2d4
Add build option to Makefile for removing static compile flags (#3026)
this make it possible to remove one patch file from
https://gitlab.alpinelinux.org/alpine/aports/-/tree/master/testing/woodpecker
2023-12-27 14:01:56 +02:00
6543
3f1f563180
fix and lint swagger file (#3007)
Co-authored-by: qwerty287 <ndev@web.de>
2023-12-24 15:50:01 +01:00
runephilosof-karnovgroup
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
6543
5a7b689e30
Switch to go vanity urls (#2706)
Co-authored-by: Anbraten <anton@ju60.de>
2023-11-07 08:04:33 +01:00
Patrick Schratz
856b2ef8c7
pre-commit fixes (#2669)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Anbraten <anton@ju60.de>
2023-10-31 09:14:09 +01:00
qwerty287
7136ca1999
Use golangci-lint to lint zerolog (#2524) 2023-10-04 15:48:56 +02:00
6543
76f932878c
make: autodetect host platform (#2322)
---
*Sponsored by Kithara Software GmbH*
2023-08-24 00:24:16 +02:00
6543
c973099c99
Refactor version handling in Makefile (#2320) 2023-08-23 06:53:40 +02:00
qwerty287
81ead7cbf2
Support user secrets (#2126) 2023-08-21 15:04:12 +02:00
6543
a5ef372190
Move "skip ci" logic into global pipeline conditions (#2216)
... and make custom errors follow std err conventions

this fix a 500 response if the whole pipeline is filtered out
2023-08-17 15:52:43 +02:00
6543
2222638b10
pipeline: fix VERSION_NUMBER 2023-08-17 14:20:43 +02:00
6543
8d19d3b8ff
Set correct version for release branch releases (#2227)
close  #2225

also make the sha 10 chars long instead of 8, to match the docker tags
2023-08-16 23:58:51 +02:00
qwerty287
8cdac56d8f
Check for correct license header (#2137) 2023-08-10 11:06:00 +02:00
6543
f464156917
Enhance development on windows (#2022)
- make sure git store files with LF on windows too
- append .exe on windows as target for build targets too
2023-07-20 20:06:09 +03:00
6543
2e851ba4a0
Release windows build for server too (#2012)
and other build enhancements
2023-07-18 18:46:27 +02:00
6543
1eb3c033ea
increase timeout for test-server-datastore 2023-07-10 16:03:37 +02:00
6543
5139624cf8
Migrate old logs to new database schema (#1828)
address new models based on #1802
2023-06-12 22:43:14 +02:00
6543
101e684059
make in_docker work again (#1830) 2023-06-06 18:29:40 +02:00
6543
79c8da2f32
Drop tarball release (#1819)
close #1262
2023-06-04 05:09:10 +02:00
Martin W. Kirst
14177635b6
Update swagger API specification (#1782)
# Summary

This PR drops the outdated former swagger.yaml/json and introduced
automatic API document generation from Go code.
The generated code is also used to generate documentation/markdown for
the community page,
as well as enable the Woodpecker server to serve a Swagger Web UI for
manual tinkering.

I did opt-in for gin-swagger, a middleware for the Gin framework, to
ease implementation and have a sophisticated output.
This middleware only produces Swagger v2 specs. AFAIK the newer OpenApi
3x tooling is not yet that mature,
so I guess that's fine for now.

## Implemenation notes

- former swagger.json files removed
- former // swagger godocs removed
- introduced new dependency gin-swagger, which uses godoc annotations on
top of Gin Handler functions.
- reworked Makefile to automatically generate Go code for the server
- introduce new dependency go-swagger, to generate Markdown for
documentation purposes
- add a Swagger Web UI, incl. capabilities for manual API exploration
- consider relative root paths in the implementation
- write documentation for all exposed API endpoints
- incl. API docs in the community website (auto-generated)
- provide developer documentation, for the Woodpecker authors
- no other existing logic/code was intentionally changed

---------

close #292

---------

Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: 6543 <6543@obermui.de>
2023-06-03 21:38:36 +02:00
Marcin Puc
3a475ce210
Fix faulty hardlink in release tarball (#1669)
Fixes #1664 

The cause was a duplicate entry in the `tar` makefile invocation, as
well as `tar` itself happily producing an additional bogus hardlink in
the archive.
2023-03-22 12:55:39 +01:00
Lauris BH
46452fbd84
Update Go dependencies and minimal Go version to 1.20 (#1650)
Signed-off-by: 6543 <6543@obermui.de>
Co-authored-by: 6543 <6543@obermui.de>
2023-03-21 00:48:15 +01:00
6543
ed78ba78fc
gofump don't touch code generated files (#1654)
`make format` did touch code generated files witch creates a mess from
time to time ...

this change it ...
2023-03-19 22:56:16 +01:00
6543
56e6639396
Refactor nits (#1652)
-
https://github.com/woodpecker-ci/woodpecker/pull/1641/files#r1141405630
-
ade8e6d010 (r105091268)
-
https://github.com/woodpecker-ci/woodpecker/pull/1647/files#r1141410010

---------

Co-authored-by: Anbraten <anton@ju60.de>
2023-03-19 18:32:19 +01:00
6543
0f6ce5c4e9
Bump xgo and go to v1.19.5 (#1538)
made possible again by:
- https://github.com/techknowlogick/xgo/pull/189
- https://github.com/techknowlogick/xgo/pull/193
2023-01-13 21:03:46 +01:00
Josh Soref
e7c8ed00e6
Makefile tweaks (#1410)
make CGO optional and fix a bug

Co-authored-by: 6543 <6543@obermui.de>
2022-11-22 23:39:49 +01:00
6543
9fae0dafaa
Update dep moby & golang.org/x/text (#1263)
* CVE-2022-36109
* CVE-2022-32149
2022-10-14 13:01:06 +02:00
Lukas
fd6923fe20
Replace yarn with pnpm (#1240)
Should resolve startup issues in gitpod and be a lot faster 🚀
2022-10-08 16:15:07 +02:00
Anbraten
c5778e9ce4
Add help command to makefile (#1210)
This changes sorts the makefile a bit and adds a help command to list a commands / targets and what they are doing.
2022-09-28 17:28:23 +02:00
qwerty287
415903f7e8
Fix readme grammar and increase golangci-lint timeout (#1173) 2022-09-07 17:36:48 +01:00
qwerty287
52d3652f2e
Fetch repositories with remote ID if possible (#1078)
Use IDs of the forge to fetch repositories instead of their names and owner names. This improves handling of renamed and transferred repos.

TODO

- [ ] try to support as many forges as possible
    - [x] Gogs (no API)
    - [ ] Bitbucket Server
    - [x] Coding (no API?)
- [x] update repo every time it is fetched or received from the forge
- [x] if repo remote IDs are not available, use owner / name to get it
- [x] handle redirections (redirect a renamed repo to its new path)
- [x] ~~pull all repos once during migration to update ID (?)~~ issue fixed by on-demand loading of remote IDs
- [x] handle redirections in web UI
- [ ] improve handling of hooks after a repo was renamed (currently it checks for a redirection to the repo)
- [x] tests
- [x] `UNIQUE` constraint for remote IDs after migration shouldn't work (all repos have an empty string as remote ID)

close #854
close #648 partial
close https://codeberg.org/Codeberg-CI/feedback/issues/46

Possible follow-up PRs
- apply the same scheme on everything fetched from the remote (currently only users)

Co-authored-by: 6543 <6543@obermui.de>
2022-09-05 17:08:51 +02:00
6543
ca84f703e3
Add default event filter (#1140)
breakout from #934

when new events are added you don't have to worry that pipeline will behave different as it does now with this

Co-authored-by: Anbraten <anton@ju60.de>
2022-08-30 00:36:37 +02:00
6543
17999da20f
Minim golang 1.18 and drop vendor folder (#979) 2022-06-17 01:57:02 +02:00
John Olheiser
517be0394c
Initial version of CLI docs (#886)
Signed-off-by: jolheiser <john.olheiser@gmail.com>

Co-authored-by: Anbraten <anton@ju60.de>
2022-04-19 14:24:24 +02:00
relnod
da99f47553
Build multiarch images for server (#821)
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Anbraten <anton@ju60.de>
2022-03-01 16:40:24 +01:00
6543
86748bb8f6
Fix Makefile by exposing VERSION_NUMBER var for bundle targets (#816) 2022-03-01 12:28:44 +01:00
6543
f97f6f25b3
fix nfpm (#788)
fix #774
2022-02-24 15:35:11 +01:00
Zav Shotan
51904c9ee1
Add support for building in docker (#759)
be able to build woodpecker on any environment

Co-authored-by: Zav Shotan <zshotan@bloomberg.net>
Co-authored-by: 6543 <6543@obermui.de>
2022-02-10 15:12:47 +01:00
6543
7b2b884a0e
Add Codecov.io Upload (#660)
use https://github.com/woodpecker-ci/plugin-codecov to track code coverage on codecov.io
2022-02-01 19:34:56 +01:00
6543
062579d66f
Run pipeline for binary files on pull if go code changed (#722)
* run pipeline for binary files on pull if go code changed

* add release-dryrun

* run "test" only if go code changes

* fix-build-checksum
2022-01-29 13:58:55 +01:00