Commit graph

182 commits

Author SHA1 Message Date
6543
3f534cfff6
Optimize pipeline and switch to "steps" (#1901) 2023-06-30 13:32:17 +02:00
6543
b49cf64949
let new bugfix be published (2) 2023-06-29 17:21:06 +02:00
6543
e6d646bc7b
let new bugfix be published 2023-06-29 17:09:33 +02:00
6543
7e708874ae
Rename yaml pipeline to steps (#1833)
Adjust pipeline-config to match
[Terminology](https://woodpecker-ci.org/docs/next/usage/terminology)
2023-06-07 12:04:37 +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
6543
fb5b259856
temporary deactivate securitycheck for golang 2023-05-14 10:31:39 +02:00
6543
6d022712e8
Fix docs build (#1690)
Co-authored-by: Anbraten <anton@ju60.de>
2023-04-03 12:30:01 +02:00
6543
e8d33998d3
add "midnight_docs" cron job, so plugin info gets refreshed each midnight in any case 2023-04-03 00:20:30 +02:00
Neil Hanlon
a95a5b43bf
fix(backend/kubernetes): Ensure valid naming of name field (#1661)
- Kubernetes v1.26 on VKE causes error when creating persistent volume
claim because of uppercase characters in name field

This patch is trivial just in order to get it working - happy to
implement differently.

The error in question:

```
The PersistentVolumeClaim "wp-01G1131R63FWBSPMA4ZAZTKLE-0-clone-0" is invalid: metadata.name: Invalid value: "wp-01G1131R63FWBSPMA4ZAZTKLE-0-clone-0": a lowercase RFC 1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
```
2023-03-21 20:00:45 +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
2a7f4728a5
Move helm charts to own repo "helm" (#1589)
-> https://github.com/woodpecker-ci/helm
2023-02-23 15:22:01 +02: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
6543
5214813a23
ci: cross-compile-server: force pure Go resolver (#1502)
close #1497
2022-12-25 16:36:43 +01:00
6543
af69e03679
CI: pin xgo and go to v1.18.7 (#1439) 2022-11-23 08:01:38 +01:00
Josh Soref
023d03dd61
Spelling (#1405)
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-11-09 08:12:17 +01:00
Divya Jain
a5e1714039
Add additional tag to next image with commit sha (#1365)
Next image will have an additional tag of format `next-${truncated_commit_sha}`,

where truncated_commit_sha is the first 10 characters of the commit sha
(also, same for for the `next-alpine` image).
2022-10-29 19:28:47 +02:00
qwerty287
da7d13ad4e
Use native directory and run with Node 18 (#1337)
- replace `cd` with native key `directory` (#1329)
- Update Node images to 18
2022-10-25 14:51:29 +02:00
6543
f56d0812c7
Partially Revert "CI: add branches filter (#1130)"
This partially reverts commit f9dd6518c0.
2022-10-14 13:41:43 +02:00
6543
f9dd6518c0
CI: add branches filter (#1130)
Co-authored-by: Anbraten <anton@ju60.de>
2022-10-10 12:49:30 +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
qwerty287
9c12b321a1
Upload test-lib coverage results to codecov (#1227) 2022-10-01 11:51:04 +02:00
6543
a39e8a0f9a
Make exec run be detected as WoodpeckerCI (#1218)
and exclude docs/docs/40-cli.md from git as it will be generated by CI
2022-09-27 22:19:39 +02:00
qwerty287
896746a91a
Remove old CLI docs generation code (#1196)
Removes code that's not longer required because we use a newer version
of urfave/cli.

Co-authored-by: 6543 <6543@obermui.de>
2022-09-25 14:36:31 +02:00
Lauris BH
d5cdd2bb04
Add dependency security check using trivy (#1163) 2022-09-03 20:46:48 +02:00
6543
65587e3e30
use yaml alias and adjust build targets for docker images (#1143)
- use yaml alias for plaftorms settings
- add linux/s390x for agent/cli release
- add linux/riscv64
- remove darwin as mac use linux in hypervisor for docker
2022-08-31 16:27:06 +02:00
6543
98e6396e3e
Publish preview container images of pulls (#1072)
* convert dryrun into preview

* nit: vendor first
2022-08-14 19:04:19 +02:00
Anbraten
fdf5fd3f69
Use local search and update docusaurus (#1093) 2022-08-14 09:19:24 +02:00
6543
1e8d4cc455
Update jsonschema and pipeline linting 2022-07-19 15:09:39 +02:00
6543
8da0ee47f7
Use variables in pipeline (#1026)
use yaml aliases (https://yaml.org/spec/1.2.2/#3222-anchors-and-aliases) to have pipeline `variables`

Co-authored-by: qwerty287 <80460567+qwerty287@users.noreply.github.com>
Co-authored-by: Anbraten <anton@ju60.de>
2022-07-17 18:25:56 +02:00
6543
86cbd63dc2
Update base images (#1024)
update alpine base image to current stable
and cross-build with golang v1.18
2022-07-17 09:41:32 +02:00
6543
08479390ff
Use editorconfig-checker (#982) 2022-06-17 12:03:34 +02:00
6543
17999da20f
Minim golang 1.18 and drop vendor folder (#979) 2022-06-17 01:57:02 +02:00
6543
d2aad473d7
Revert "hotfix to get no missmatch [1 & 2]" (#984)
This reverts commit 06f869beb3.
This reverts commit dbb5b4baa2.
2022-06-16 23:55:17 +02:00
6543
06f869beb3
hotfix to get no missmatch [2] 2022-06-16 23:07:46 +02:00
6543
dbb5b4baa2
hotfix to get no missmatch 2022-06-16 23:00:24 +02:00
6543
fe006d9656
Revert "tmp: fix to make ci run agian"
This reverts commit e172b66d53.
2022-05-20 05:31:19 +02:00
6543
e172b66d53
tmp: fix to make ci run agian 2022-05-20 05:27:43 +02:00
6543
c986c7f5ee
CI add lint-pipeline (#921) 2022-05-17 17:59:51 +02:00
Anbraten
b953468341
Update helm chart releasing (#882) 2022-04-14 08:58:28 +02:00
Anbraten
50d5c53cf6
Add preview deployments for docs for pull-requests (#820) 2022-03-23 10:31:12 +01:00
6543
313e72e56a
adapt change of #822 for release branch 2022-03-02 18:21:39 +01: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
e33fd13468
CI: bump golang version (#794) 2022-02-25 12:08:48 +01:00
Anbraten
4de9c014ea
fix codecov when (#743) 2022-02-04 10:45:04 +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
8c2896faea
fix .woodpecker/binaries.yml (#737) 2022-01-31 17:42:09 +01:00
6543
53b68d808e
Add step to release latest images for release branches (#727) 2022-01-31 15:50:58 +01:00
6543
071bd7418a
Fix tests and pipeline (#732)
* fix pipeline

* use EqualStringSlice to compare slices in tests

* full test coverage

* tests: wait for mysql/postgres to sync ...
2022-01-31 14:39:53 +01:00
6543
95ce87fa1b
Fix path schema (#723)
- allow array for path
- remove "include:" as it is default case
- run tests on schema changes too
2022-01-29 14:26:00 +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
17fd76b23f
Fix helm chart release (#715)
* fix helm chart release

* make it pass
2022-01-24 11:41:39 +01:00
6543
11d5d4bf48
Compile for more platforms on release (#703)
* move docker stuff into own pipeline

* add compile targets "freebsd/arm64,freebsd/amd64,openbsd/arm64,openbsd/amd64" for agent & cli

* add dryrun for server
2022-01-18 00:36:46 +01:00
Kaleb Elwert
62557ffeff
Only publish to latest on tags (#505)
* Only publish to latest on tags

* Update docs

Co-authored-by: 6543 <6543@obermui.de>
2022-01-15 17:49:31 +01:00
6543
c186e2fa8c
Update dev-docs & improve migration code (#670) 2022-01-08 20:21:22 +01:00
6543
c2b0c1d73e
Multiarch build cli docker images (#634) 2021-12-21 16:51:23 +01:00
Anbraten
465d2c9d84
Add development docs (#610)
Add documentation on how to develop woodpecker

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lukas <lukas@slucky.de>
2021-12-21 04:45:41 +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
0aefdc9978
Add tests framework for storage migration (#630)
* add test sqlite db

* migration tests for sqlite

* fix pipeline config

* fix tests to other dbms

* fix postgres & mysql
2021-12-20 16:15:21 +01:00
6543
e7cfa902a6
Another fix for settings field in pipeline config (#579)
close #578

- adjust to new settings field own pipeline config
- more test coverage
- Fix environment parse of settings
- Fix pipeline schema
2021-12-08 18:17:52 +01:00
Anbraten
4642d98f2e
improve tests (#562) 2021-12-07 01:13:31 +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
Lukas
c28f7cb29f
Add golangci-lint (#502)
Initial part of #435
2021-11-14 21:01:54 +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
7725058f03
Release deb, rpm bundles (#405) 2021-10-20 21:55:09 +02:00
Anbraten
4cc8594b63
Update links to woodpecker-ci.org (#445) 2021-10-14 18:13:57 +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
d15c642f91
Release cli images (#404)
* release cli images

* update docs

Co-authored-by: 6543 <6543@obermui.de>
2021-10-04 23:47:21 +02:00
Anbraten
2084ff3a62
Improve release (#400)
* improve make release

* improve release

* fix release workflow
2021-10-04 19:50:21 +02:00
6543
e3354e440f
Publish alpine container (#398)
* Enable build & publish of alpine docker container
 * Delete outdated BUILD file
 * Move Dockerfiles into subdir "docker"
 * Update & format Dockerfiles
 * Introduce "next" tag

Co-authored-by: Anbraten <anton@ju60.de>
2021-10-04 17:09:22 +02:00
Marian Steinbach
17b8867b96
Clean up config environment variables for server and agent (#218)
The goal here is to make consistent use of configuration environment variables prefixed `WOODPECKER_`. Where several variants existed, this PR aims to remove all but one option, leaving the most explicit.

This PR only changes server and agent code, but not documentation, in order to keep the PR digestible. Once we have consensus that this is correct, I'll change docs accordingly.

User (rather: admin) facing changes in this PR:

- In general, support for all server and agent config environment variables (env vars) starting with `DRONE_` is removed. The according `WOODPECKER_*` variables must be used instead.
- The env var `WOODPECKER_HOST` replaces `DRONE_HOST`, and `DRONE_SERVER_HOST`.
- The env var `WOODPECKER_AGENT_SECRET` is used to configure the shared secret which agents use to authenticate against the server. It replaces `WOODPECKER_SECRET`, `DRONE_SECRET`, `WOODPECKER_PASSWORD`, `DRONE_PASSWORD`, and `DRONE_AGENT_SECRET`.
- The env var `WOODPECKER_DATABASE_DRIVER` replaces `DRONE_DATABASE_DRIVER` and `DATABASE_DRIVER`.
- The env var `WOODPECKER_DATABASE_DATASOURCE` replaces `DRONE_DATABASE_DATASOURCE` and `DATABASE_CONFIG`.
2021-09-28 15:43:44 +02:00
Anbraten
0009c19f1c
Release Helm charts (#302)
closes #261
2021-09-24 14:04:54 +02:00
Anbraten
8584bbd073
Improve docs deployment (#333)
Co-authored-by: 6543 <6543@obermui.de>
2021-09-23 17:54:19 +02:00
Jacob Floyd
5fe712cca6
Move package store/ to server/store/ (#341)
* Refactor: move store/ to server/store/

* fix pipeline for moved tests

Co-authored-by: 6543 <6543@obermui.de>
2021-09-23 13:33:59 +02:00
Anbraten
96828b16c1
Support recursive glob for path conditions (#327)
* Support glob with doublestar for path conditions

* Update docs and pipeline
2021-09-21 06:18:43 +02:00
6543
d59fdb4602
[CI] Fix docs deploy & links (#301)
* set git commiter

* update links to docu

* fix image link
2021-09-11 18:48:52 +02:00
6543
9d8f3d2dc7
CI: fix pipeline "deploy-docs" 2021-09-11 17:22:05 +02:00
Anbraten
9267a46d5c
[Docs] Migrate docs framework to Docusaurus (#282)
- Replace mkdocs with docosaurus (improved menu structure, ...)
- Structure docs into `Usage` and `Server Setup / Administration`
- Update favicon
- Create new pipeline-syntax page with all options and links to more detailed docs if available
- Add ci to publish to `woodpecker-ci.github.io`
- Deploy docs preview to surge for review
- Update start-page

Co-authored-by: 6543 <6543@obermui.de>
2021-09-11 17:10:32 +02:00
6543
194e01c9c6
[CI] Run "build" on pull too (#287)
* CI: run "build" on pull too

* vendor build tools too
2021-08-30 20:48:19 +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
6543
6f4528f7f6
use multi pipelines 2021-08-29 22:21:32 +02:00