Commit graph

229 commits

Author SHA1 Message Date
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
6543
9c7691094a
Add multiarch support agent (#622)
- Makefile
  - Delete _with-docker
  - Fix version creation
  - Add default values for  TARGETOS & TARGETARCH
- Add multiarch Dockerfile for agent
- pipeline config
  - target more platforms for agent docker builds (windows & darwin)

close #181, close #187
2021-12-21 02:35:48 +01:00
6543
4cbdacb21c
Nits Collected over last month (#595)
- add coverage.out
- add context queue
- fix misspell
- sanitize config: WOODPECKER_GITEA_URL
- storage backend migration should have no xorm session within migration function
2021-12-11 13:15:04 +01:00
Anbraten
4642d98f2e
improve tests (#562) 2021-12-07 01:13:31 +01:00
6543
1172dc3311
Write own yaml2json func (#570)
* fix regression of #384 
 * add more tests
2021-12-07 01:13:02 +01:00
6543
568dceaccf
fix make test (#565)
now vet and formatcheck is lint
2021-12-04 13:24:44 +01:00
Anbraten
f32c20b650
Improve ci tests (#353)
* improve ci tests

* filter store

* improve ci configs

* fix create dir before accessing
2021-11-30 17:46:19 +01:00
Anbraten
063d0bb32a
Replace DRONE_ with CI_ variables in pipeline steps (#427)
Dropped support for `DRONE_*` environment variables in pipeline steps. Pipeline meta-data can be accessed with `CI_*` variables.
  - `CI_*` prefix replaces `DRONE_*`
  - `CI` value is now `woodpecker`
  - `DRONE=true` has been removed
2021-11-25 20:43:31 +01:00
6543
86bb8f195c
format do 'simplify' and check via CI (#509)
* `make format` simplify code now

* code format

* check simplified via linter
2021-11-14 22:33:45 +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
Anbraten
58838f225c
Rewrite of WebUI (#245)
Rewrite of the UI using Typescript, Vue3, Windicss and Vite. The design should  be close to the current one with some changes:
- latest pipeline in a sidebar on the right
- secrets and registry as part of the repo-settings (secrets and registry entries shouldn't be used as much so they can be "hidden" under settings IMO)
- start page shows list of active repositories with button to enable / add new ones (currently you see all repositories and in most cases you only add new repositories once in a while)
2021-11-03 17:40:31 +01:00
Anbraten
0e867e2010
fix deb, rpm releases (#465) 2021-10-21 18:34:49 +02:00
Anbraten
7725058f03
Release deb, rpm bundles (#405) 2021-10-20 21:55:09 +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
Anbraten
7eef7f7a52
build agent for multiple platforms (#408)
(arm, arm64, amd64, linux, windows, darwin)
2021-10-12 09:50:56 +02:00
Anbraten
5ef7e3c8e6
fix cli build (#407) 2021-10-05 01:56:11 +02:00
Anbraten
2084ff3a62
Improve release (#400)
* improve make release

* improve release

* fix release workflow
2021-10-04 19:50:21 +02:00
Anbraten
ed6d3f3cea
Use go embed for web files and remove httptreemux (#382)
- replace togo with go embed
- replace httptreemux with gin

closes #308
2021-09-29 17:34:56 +02:00
Anbraten
b3d40024a9
Rename cmd agent and server folders and binaries (#330)
Renamed `cmd/drone-agent` to `cmd/agent` and `cmd/drone-server` to `cmd/server` and binaries to get rid of the drone name.
2021-09-21 17:06:13 +02:00
Anbraten
188b9e6eb5
Refactor cli (#329)
- move cli files from `cli/drone` to `cli/`
- move cli main to `cmd/cli/main.go` to match agent and server
- use version from `version/version.go` to match agent and server
2021-09-21 16:36:41 +02:00
mscherer
4e721c07cc
Fix docs/makefile after #284 got merged (#291) 2021-09-09 19:39:59 +02:00
6543
75513575be
Use go's vendoring (#284)
* store dependency's in git

* since we vendor ... rm tech-depts

* aad make target 'vendor' to update vendor folder (manual task)
2021-08-30 19:14:04 +02:00
ygbillet
2f222cea25
fix: Build server with correct option (#237)
We must build server with CGO_ENABLED=1 because of mattn/sqlite3.

Co-authored-by: Yves-Gaël BILLET <ygbillet@ifotec.com>
2021-06-30 17:17:54 +02:00
6543
d40a4a4b32
Enable go vet for ci (#230)
* enable go vet for ci

* fix vet issues

* move `./.cli.sh` into `make release-cli`
2021-06-22 13:26:37 +02:00
6543
b52ef5f270
ci: fix build (#231) 2021-06-22 13:12:26 +02:00
6543
bfc4aa8059
Enforce code format (#228)
* format .drone.yml & go code

* improve .editorconfig

* extend Makefile

* enforce go code format

* fix space

* update deps

* clean up
2021-06-22 12:34:35 +02:00
Laszlo Fogas
c7ebd68232 Relaced laszlocph/woodpecker with woodpecker-ci/woodpecker 2021-05-25 14:08:27 +02:00
Laszlo Fogas
ae3f59e274 Fixing tests 2021-02-19 10:17:29 +01:00
Laszlo Fogas
d3524d6541 Fixing tests 2021-02-19 09:57:34 +01:00
Laszlo Fogas
80ecd44a08 Fixing modules 2021-02-19 09:47:26 +01:00
Laszlo Fogas
5ea7098569 Go 1.16, go fmt, go modules update 2021-02-19 09:43:03 +01:00
Laszlo Fogas
8dee34878d Version is now a string coming from ldlags and git tags 2019-11-12 21:10:16 +01:00
Laszlo Fogas
61a14df51b Pull in frontend 2019-11-12 14:27:39 +01:00
mhmxs
1ffc4ded4e Solve race condition in fifo.process 2019-10-08 12:09:31 +02:00
mhmxs
b7a6e6bd37 Introduce docker builds in Makefile 2019-10-06 22:07:31 +02:00
mhmxs
7fd68a706e Create Makefile and targets to build project 2019-09-14 14:20:16 +02:00
Brad Rydzewski
48b20889da remove makefile 2017-05-13 10:03:38 +02:00
Brad Rydzewski
ccb28d0d74 commit embedded templates 2017-05-12 16:06:01 +02:00
Brad Rydzewski
cc530301fe drone exec should read secrets from env 2017-04-21 18:18:11 +02:00
Brad Rydzewski
a2440a0d46 update yaml for 0.6 2017-04-12 20:26:52 +02:00
Brad Rydzewski
6e735f28d8 ignore branch parse error 2017-03-16 19:00:56 +08:00
Brad Rydzewski
3631c4d4cd added log dep 2016-09-29 17:48:17 -04:00
Brad Rydzewski
2bb47ed7cb fix Makefile to pull drone/mq 2016-09-28 15:56:19 -04:00
Brad Rydzewski
a3d6aeeb97 fix how we copy the static binary to /release 2016-09-03 13:58:20 -05:00
Brad Rydzewski
5b88ee0124 Fix missing dir in makefile 2016-09-03 13:08:52 -05:00
Ivan Babrou
527d0cd5c2
Speedup local build iterations by reusing built packages
Before cold and hot runs are the same:

```
$ rm -rf $GOPATH/pkg
```

```
$ time make
go generate github.com/drone/drone/server/template
go generate github.com/drone/drone/store/datastore/ddl
go build --ldflags '-X github.com/drone/drone/version.VersionDev=' -o release/drone github.com/drone/drone/drone

real   	0m43.638s
user   	0m48.990s
sys    	0m5.480s
```

```
$ time make
go generate github.com/drone/drone/server/template
go generate github.com/drone/drone/store/datastore/ddl
go build --ldflags '-X github.com/drone/drone/version.VersionDev=' -o release/drone github.com/drone/drone/drone

real   	0m46.950s
user   	0m49.506s
sys    	0m6.086s
```

After hot builds are much faster:

```
$ rm -rf $GOPATH/pkg
```

```
$ rm -rf $GOPATH/pkg && time make
go generate github.com/drone/drone/server/template
go generate github.com/drone/drone/store/datastore/ddl
go install -ldflags '-X github.com/drone/drone/version.VersionDev=' github.com/drone/drone/drone
cp /Users/bobrik/projects/drone/bin/drone release/drone

real   	0m44.735s
user   	0m51.049s
sys    	0m4.517s
```

```
$ time make
go generate github.com/drone/drone/server/template
go generate github.com/drone/drone/store/datastore/ddl
go install -ldflags '-X github.com/drone/drone/version.VersionDev=' github.com/drone/drone/drone
cp /Users/bobrik/projects/drone/bin/drone release/drone

real   	0m3.364s
user   	0m2.934s
sys    	0m0.808s
```
2016-09-01 17:45:08 +01:00
Bo-Yi Wu
46dac1b9fc remove missing target in Makefile. 2016-08-07 00:02:19 +08:00
Brad Rydzewski
4d1df2924c replace UI with single page application (#1704) 2016-07-08 15:40:29 -07:00
Thomas Boerger
d239b27b40
Dropped directories from archive
Currently the archive gets created including the directories, so the
regular guide to just download and copy the binary doesn't work. With
that change I have dropped the folders from the archive and the Drone
binary gets directly into the toplevel of the archive.
2016-06-27 22:18:36 +02:00
Brad Rydzewski
c888fb3152 fix issue zipping windows binary 2016-05-26 11:49:16 -07:00
Brad Rydzewski
cfd5e076e8 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	Makefile
2016-05-26 11:28:02 -07:00
Brad Rydzewski
62ec7311a4 generate sha files 2016-05-26 11:17:24 -07:00
Brad Rydzewski
64785c8b47 update yaml for s3 upload 2016-05-26 11:08:48 -07:00
Rayan Makhmutov
4eb805b527 Use whitespace + $(null) instead of whitespace + # 2016-05-13 08:30:02 +05:00
Rayan Makhmutov
5d2bd8070c Fix Makefile build on OS X 2016-05-12 20:41:58 +05:00
Brad Rydzewski
e7aa94f875 store signature and verification in database 2016-05-10 18:48:02 -07:00
Brad Rydzewski
b5823d20ff chunk the yaml into sections 2016-04-19 18:37:53 -07:00
Brad Rydzewski
a8c50005b0 ability to revoke user tokens 2016-04-08 17:16:45 -07:00
Brad Rydzewski
e64ec7cf88 removing deprecated files 2016-03-30 00:58:18 -07:00
Brad Rydzewski
f9bba48e19 move version to package 2016-03-30 00:48:47 -07:00
Brad Rydzewski
688b29b639 backported 0.5 database restructure to 0.4.1 2016-03-25 12:54:16 -07:00
Brad Rydzewski
6b69913d82 fix database unit tests in Makefile 2015-11-11 14:52:29 -08:00
Brad Rydzewski
a13ce5cb6f correctly store build number in binary 2015-11-10 11:40:22 -08:00
Henrik Jonsson
8197942f69 Enable vendoring for github.com/go-swagger dependency
Building in a Docker container based on `golang` doesn't work at `427560a`: C.f 2d37d66e2d
2015-11-10 19:50:36 +01:00
Brad Rydzewski
2d37d66e2d temporarioly GO15VENDOREXPERIMENT when go getting the swagger package 2015-11-05 19:26:25 -08:00
Brad Rydzewski
832ae41fc6 updated docs 2015-10-26 10:41:07 -07:00
Brad Rydzewski
3c8c330656 added command line utility docs 2015-10-25 15:18:16 -07:00
Brad Rydzewski
2f071bb2cf re-enabled build feed 2015-10-21 16:39:43 -07:00
Brad Rydzewski
7f9ef94f47 unit testing postgres, mysql. temporary workaround for backticks 2015-10-20 00:08:09 -07:00
Brad Rydzewski
e3afea861b log when error fetching repository 2015-10-14 12:48:46 -07:00
Brad Rydzewski
a7a1b1dfb7 cleaning up the middleware and adding caching with TTL 2015-10-13 02:08:08 -07:00
Brad Rydzewski
5ba7dad0dc updated docs to not include drone javascript files when generated 2015-10-07 15:36:46 -07:00
Brad Rydzewski
cd86948cff copy static assets to static directory in S3 for readme.drone.io 2015-10-07 14:41:30 -07:00
Brad Rydzewski
7ed0b393a6 specify drone 0.4 in docs 2015-10-07 14:29:52 -07:00
Brad Rydzewski
9b843a4e17 fixed issue in Makefile 2015-10-07 13:15:38 -07:00
Brad Rydzewski
0943117ad7 propogate HTTP_PROXY environment variables throuhgout build 2015-10-06 15:50:15 -07:00
Brad Rydzewski
acb27f4f1e fix go get in makefile 2015-10-06 14:50:41 -07:00
Brad Rydzewski
9555f50215 initial commit to add doc generation as part of build 2015-10-06 14:41:55 -07:00
Brad Rydzewski
2b00d12bb6 code to generate API documentation 2015-10-06 10:19:43 -07:00
Brad Rydzewski
6c81c9cb03 manually go get goblin since it isn't included by vexp yet 2015-09-30 14:06:51 -07:00
Brad Rydzewski
b315914edb update vendored repos 2015-09-30 14:00:48 -07:00
Brad Rydzewski
67c00fa6a9 get jsmin for contrib file 2015-09-30 13:02:20 -07:00
Brad Rydzewski
0acbf898dc fix make gen 2015-09-29 23:10:52 -07:00
Brad Rydzewski
dfea14c7e5 updated vendor files and paths 2015-09-29 18:21:17 -07:00
Brad Rydzewski
ae324704bb moved to drone-exec 2015-09-02 16:52:59 -07:00
Thomas Boerger
d6a546a309 Removed in go implemented tasks from Makefile 2015-08-27 11:03:03 +02:00
Brad Rydzewski
a18da82cb2 support for mysql database 2015-08-24 11:25:01 -07:00
Bugagazavr
37237230e9 Fix warnings 2015-08-20 21:09:12 +03:00
Brad Rydzewski
164c0c6a8e move clone path calc due to panic 2015-08-19 12:38:08 -07:00