Commit Graph

186 Commits

Author SHA1 Message Date
Patrick Schratz
3d0338315f Revert to docker 20.10.x for API 1.41 compatibility (#1792)
fix #1786

---------

Co-authored-by: 6543 <6543@obermui.de>
2023-06-02 15:09:38 +02:00
qwerty287
dc3f7d61ea Update Gin (#1797)
Fixes the security issue (we aren't affected)

Closes #1756
2023-06-01 08:25:17 +02:00
qwerty287
94e63b43f2 Update github.com/docker/distribution (#1749)
Update github.com/docker/distribution to 2.8.2

https://github.com/distribution/distribution/releases/tag/v2.8.2
https://github.com/advisories/GHSA-hqxw-f8mx-cpmw
2023-05-14 12:48:32 +02:00
qwerty287
2ccf7c6f1a Drop Gogs support (#1752)
Gogs support is broken (and we won't fix it because we don't care about
it...) because it does not support OAuth, at least after we introduced
the new Vue UI.

See:

77d830d5b5/server/forge/gogs/gogs.go (L84)

This route is not present in the new UI.
2023-05-14 10:34:05 +02:00
Anbraten
188123ea74 Update dependencies (#1744) 2023-05-11 00:28:02 +02:00
6543
204d05f447 Implement YAML Map Merge, Overrides, and Sequence Merge Support (#1720)
close  #1192
2023-04-29 14:49:41 +02: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
Lauris BH
f1f722645c Update dependencies golang/x libs (#1612) 2023-03-10 19:23:07 +01:00
6543
18d3139e9e Use modern error handling and enforce it via lint (#1327)
Co-authored-by: Anbraten <anton@ju60.de>
2023-02-02 00:08:02 +01:00
antomy-gc
6516a28cdd Secrets encryption in database (#1475)
closes #101

Added secrets encryption in database

- Google TINK or simple AES as encryption mechanisms
- Keys rotation support on TINK
- Existing SecretService is wrapped by encryption layer
- Encryption can be enabled and disabled at any time

Co-authored-by: Kuzmin Ilya <ilia.kuzmin@indrive.com>
Co-authored-by: 6543 <6543@obermui.de>
2023-01-12 20:59:07 +01:00
6543
fc4af44b43 router: create apiBase (#1442)
- refactor to dedup string `api`
- bump golang.org/x/next
2022-12-21 16:16:36 +01:00
6543
e8490a757f GenerateScript should not return encoded script (#1397)
followup to #1395
2022-11-06 13:36:34 +01:00
qwerty287
8f183c82a8 Support changed files for Gitea PRs (#1342)
- add tests to fetch changed files
- ignore error if gitea version is to low
- adjust docs accordingly

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lauris BH <lauris@nix.lv>
2022-10-28 19:17:30 +02:00
Joonhyeok Ahn (Joon)
186aee61cf Check if repo exists before creating pipeline (#1297)
Close #1257

make sure the repo exists first before triggering the pipeline
2022-10-22 01:34:11 +02:00
qwerty287
38198f83c4 Update all dependencies (#1291) 2022-10-19 10:15:58 +02: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
Anbraten
287800ac62 Add when evaluate filter (#1213)
closes #312 
closes #224
closes #963

Have a look for

https://github.com/antonmedv/expr/blob/master/docs/Language-Definition.md
2022-10-06 01:49:23 +02:00
[X]
b4d89a1cce Add ability to trigger manual builds (#1156)
closes #83 
closes #240 

Co-authored-by: Anbraten <anton@ju60.de>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: 6543 <6543@obermui.de>
2022-09-27 11:05:00 +02:00
6543
afb02d2dd5 Update golang.org/x/net dep 2022-09-14 07:32:06 +02:00
Anbraten
3b0263442a Adding initial version of Kubernetes backend (#552)
Co-authored-by: laszlocph <laszlo@laszlo.cloud>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Rynoxx <rynoxx@grid-servers.net>
2022-09-05 06:01:14 +02:00
Anbraten
dbbd369c9a Migrate to certmagic (#360)
closes #219
closes #850

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2022-09-04 03:24:42 +02:00
6543
383f273392 Add cron feature (#934)
https://woodpecker-ci.org/docs/usage/cron

Co-authored-by: Anbraten <anton@ju60.de>
Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
2022-09-01 00:36:32 +02:00
6543
d3eea72663 Bump deps (#1125)
* upgrade to codeberg.org/6543/go-yaml2json v0.2.1

* upgraded github.com/bmatcuk/doublestar/v4 v4.0.2 => v4.2.0

* upgraded github.com/docker/cli v20.10.14+incompatible => v20.10.17+incompatible

* upgraded github.com/docker/docker v20.10.14+incompatible => v20.10.17+incompatible

* upgraded github.com/gin-gonic/gin v1.7.7 => v1.8.1

* upgraded github.com/golang-jwt/jwt/v4 v4.4.1 => v4.4.2

* upgraded github.com/moby/moby v20.10.14+incompatible => v20.10.17+incompatible

* upgraded github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 => v0.0.0-20220808134915-39b0c02b01ae

* upgraded github.com/lafriks/ttlcache/v3 v3.1.0 => v3.2.0

* upgraded github.com/mattn/go-sqlite3 v1.14.12 => v1.14.15

* upgraded github.com/lib/pq v1.10.5 => v1.10.6

* github.com/prometheus/client_golang v1.12.1 => v1.13.0

* upgraded github.com/urfave/cli/v2 v2.5.1 => v2.11.2

* upgraded github.com/rs/zerolog v1.26.1 => v1.27.0

* upgraded golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 => v0.0.0-20220822191816-0ebed06d0094

* upgraded github.com/xanzy/go-gitlab v0.64.0 => v0.73.1

* upgraded google.golang.org/grpc v1.47.0 => v1.49.0
2022-08-25 08:09:05 +02:00
Lauris BH
1ac2c42652 Add global and organization secrets (#1027)
* Implement database changes and store methods for global and organization secrets

* Add tests for new store methods
* Add organization secret API and UI
* Add global secrets API and UI

* Add suggestions

* Update warning style

* Apply suggestions from code review

Co-authored-by: Anbraten <anton@ju60.de>

* Fix lint warning

Co-authored-by: Anbraten <anton@ju60.de>
2022-08-14 13:48:53 +02:00
Lauris BH
19dfc331f4 Add method to check organization membership (#1037)
* Add remote method to check organization membership
* Use named return parameters in interface
* Add membership check service
* Update Gitea SDK
2022-07-25 03:09:35 +02:00
6543
69ec44075c Let single line command be a single command (#1009)
* rm go-shlex usage

* update
2022-07-19 07:20:27 +02:00
6543
31bad81979 Use external lib to convert yaml to json (#1028)
this move shared/yml/* into an independent lib
2022-07-17 17:23:31 +02:00
6543
17999da20f Minim golang 1.18 and drop vendor folder (#979) 2022-06-17 01:57:02 +02:00
6543
904f9bb194 Update github.com/containerd/containerd (#978)
* update github.com/containerd/containerd

* go mod tidy && go mod vendor
2022-06-16 17:35:56 +02:00
Anbraten
cc30db44ac Use asym key to sign webhooks (#916)
* use async key pair for webhooks

* fix tests

* fix linter

* improve code

* add key pair to database

* undo some changes

* more undo

* improve docs

* add api-endpoint

* add signaturne api endpoint

* fix error

* fix linting and test

* fix lint

* add test

* migration 006

* no need for migration

* replace httsign lib

* fix lint

Co-authored-by: 6543 <6543@obermui.de>
2022-06-01 20:06:27 +02:00
Anbraten
e79ad00826 Add agent tagging / filtering for pipelines (#902)
Officially support labels for pipelines and agents to improve pipeline picking. 

* add pipeline labels
* update, improve docs  and add migration
* update proto file

---
closes #304 & #860
2022-05-31 01:12:18 +02:00
6543
d06dfc86b4 Allow gitea dev version (#914)
* update gitea sdk to latest
* As before try to autodetect gitea version, if this does not work, assume it's latest version (v1.17.0 atm)
2022-05-14 17:34:40 +02:00
6543
1e9119ace9 Update backend dependencies (#898)
* update xorm.io

* update module

* update github.com/docker/cli

* update github.com/docker/distribution

* update github.com/docker/docker

* update github.com/gin-gonic/gin

* update github.com/golang-jwt/jwt/v4

* update github.com/golangci/golangci-lint

* update github.com/gorilla/securecookie

* update github.com/lib/pq

* update github.com/mattn/go-sqlite3

* update github.com/moby/moby

* update github.com/stretchr/testify

* update github.com/urfave/cli/v2

* update github.com/xanzy/go-gitlab

* finish

* update module

* clean
2022-05-05 19:36:49 +02:00
qwerty287
9c6c4559a7 Add SSH backend (#861)
Add SSH backend that runs commands via SSH.

Close #848
2022-04-29 12:30:50 +02:00
Lukas Bachschwell
59ba8538a1 Add support for pipeline configuration service (#804)
* Add configuration extension flags to server
Add httpsignatures dependency

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Add http fetching to config fetcher

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Refetch config on rebuild

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* - Ensure multipipeline compatiblity
- Send original config in http request

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Basic tests of config api

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Simple docs page

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Better flag naming

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Rename usages of the term yaml
Rename ConfigAPI struct

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Doc adjustments

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* More docs touchups

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Fix env vars in docs

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* fix json tags for api calls

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Add example config service

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Consistent naming for configService

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Docs: Change example repository location

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Fix tests after response field rename

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Revert accidential unrelated change in api hook

Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>

* Update server flag descriptions

Co-authored-by: Anbraten <anton@ju60.de>

Co-authored-by: Anbraten <anton@ju60.de>
2022-02-28 10:56:23 +01:00
6543
56a854fe14 Update deps (#789)
* update github.com/docker/cli

* update github.com/docker/distribution

* update github.com/docker/docker

* update github.com/gin-gonic/gin

* update github.com/golang-jwt/jwt/v4

* update github.com/golangci/golangci-lint

* update github.com/gorilla/securecookie

* update github.com/mattn/go-sqlite3

* update github.com/moby/moby

* update github.com/prometheus/client_golang

* update github.com/xanzy/go-gitlab
2022-02-24 17:33:24 +01:00
6543
b6e47a3f4a Update deps (#724)
* update github.com/containerd/containerd v1.5.7 -> v1.5.9

* update github.com/lib/pq v1.10.3 -> v1.10.4

* update github.com/prometheus/client_golang v1.11.0 -> v1.12.0

* update github.com/rs/zerolog v1.25.0 -> v1.26.1

* update golang.org/x/crypto 2021-12-15 -> 2022-01-28
2022-01-29 16:04:50 +01:00
6543
70fcc173b9 Update github.com/xanzy/go-gitlab v0.51.1 -> v0.52.2 (#599) 2021-12-12 16:39:25 +01:00
Anbraten
ffed327564 Remove ghodss/yaml (#384) 2021-12-06 18:17:31 +00:00
6543
82fd65665f Add linter bidichk to prevent malicios utf8 chars (#516)
bidichk checks for dangerous unicode character sequences

(https://github.com/golangci/golangci-lint/pull/2330)
2021-11-16 21:07:53 +01:00
Lukas
c28f7cb29f Add golangci-lint (#502)
Initial part of #435
2021-11-14 21:01:54 +01:00
6543
ca8e215cfa Migrate to Xorm (#474)
close #234

* Migrate store
* Migrate tests
* Rewrite migrations
* Init fresh DB in on step
* Rm old stuff (meddler, sql files, dead code, ...)
2021-11-13 20:18:06 +01:00
6543
0bb62be303 Embedding libcompose types for yaml parsing (#495)
since github.com/docker/libcompose is deprecated, unmaintained and archived.

and license is the same as woodpecker's, we can just copy stuff into woodpecker directly.
(we only use types of that project anyway)
2021-10-30 17:52:02 +02:00
6543
91d37be1da Update Dependencies (#486)
* github.com/Microsoft/go-winio

* github.com/bradrydzewski/togo

* github.com/containerd/containerd

* github.com/docker/cli

* github.com/docker/docker

* github.com/docker/docker-credential-helpers

* github.com/franela/goblin

* github.com/google/go-github/v39

* github.com/joho/godotenv

* github.com/lib/pq

* github.com/moby/moby

* github.com/prometheus/client_golang

* github.com/tevino/abool

* github.com/woodpecker-ci/togo

* github.com/xanzy/go-gitlab

* github.com/xeipuuv/gojsonschema

* github.com/mattn/go-sqlite3
2021-10-28 12:11:52 +02:00
6543
473a05d5b5 Update gogs client (#487)
* update github.com/gogits/go-gogs-client

* migrate

* fix test & use DefaultBranch
2021-10-28 10:09:27 +02:00
6543
e3033015ae Use std methode to get SystemCertPool (#488)
* use std methode to get SystemCertPool

* vendor

* fix lint
2021-10-28 09:14:16 +02:00
6543
798c2bc8b2 Upgrade urfave/cli to v2 (#483)
* migrate urfave/ci v1 -> v2
* refactor cli (format flag)
* log error if agent can not listen on port 3000

close #452
2021-10-27 21:03:14 +02:00
John Olheiser
17c7fe6011 Add Zerolint (#441)
* Sort imports

Co-authored-by: Anbraten <anton@ju60.de>
2021-10-13 18:48:43 +02:00
John Olheiser
4276a04f0c Move entirely to zerolog (#426)
Completely switch to zerolog

(Remove usage of logrus and std logger)

Signed-off-by: jolheiser <john.olheiser@gmail.com>
Co-authored-by: 6543 <6543@obermui.de>
2021-10-12 09:25:13 +02:00
6543
3837e03866 github.com/golang-jwt/jwt v3.2.2 -> v4.1.0 (#397) 2021-10-04 15:35:47 +02:00