mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2024-11-26 11:51:02 +00:00
Community Guide (#296)
Add a Community-Guide template was taken from [gitea](https://github.com/go-gitea/gitea/blob/main/CONTRIBUTING.md) Signed-off-by: 6543 <6543@obermui.de> Co-authored-by: Anbraten <anton@ju60.de> Co-authored-by: Malachi Soord <inverse.chi@gmail.com>
This commit is contained in:
parent
3dd8092012
commit
a07f120d12
2 changed files with 78 additions and 16 deletions
30
CONTRIBUTING.md
Normal file
30
CONTRIBUTING.md
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
# Contributing
|
||||||
|
|
||||||
|
## Maintainers
|
||||||
|
|
||||||
|
To make sure every Pull Request (PR) is checked, we have **team maintainers**.
|
||||||
|
Every PR **MUST** be reviewed by at least **one** maintainer (or owner) before it can get merged.
|
||||||
|
A maintainer should be a contributor and contributed at least 4 accepted PRs.
|
||||||
|
A contributor should apply as a maintainer in the [Discord #develop](https://discord.gg/fcMQqSMXJy) channel.
|
||||||
|
The owners or the team maintainers may invite the contributor.
|
||||||
|
A maintainer should spend some time on code reviews.
|
||||||
|
|
||||||
|
If a maintainer has no time to do that, they should apply to leave the maintainers team and we will give them the honor of being a member of the [advisors
|
||||||
|
team](https://github.com/orgs/woodpecker-ci/teams/advisors/members).
|
||||||
|
Of course, if an advisor has time to code review, we will gladly welcome them back to the maintainers team.
|
||||||
|
If a maintainer is inactive for more than 3 months and forgets to leave the maintainers team, the owners may move him or her from the maintainers team to the advisors team.
|
||||||
|
|
||||||
|
For security reasons, Maintainers must use 2FA for their accounts and if possible provide GPG signed commits.
|
||||||
|
https://help.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/
|
||||||
|
https://help.github.com/articles/signing-commits-with-gpg/
|
||||||
|
|
||||||
|
## Owners
|
||||||
|
|
||||||
|
Since Woodpecker is a pure community organization without any company support,
|
||||||
|
to keep the development healthy we will elect two owners every year.
|
||||||
|
This can also happen when a owner propose a vote or the majority of the maintainers do so.
|
||||||
|
All maintainers may vote to elect up to two candidates. When the new owners have been elected, the old owners will give up ownership to the newly elected owners.
|
||||||
|
If an owner is unable to do so, the other owners will assist in ceding ownership to the newly elected owners.
|
||||||
|
|
||||||
|
For security reasons, Owners must use 2FA.
|
||||||
|
(https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa)
|
64
README.md
64
README.md
|
@ -1,22 +1,50 @@
|
||||||
|
<p align="center">
|
||||||
|
<a href="https://github.com/woodpecker-ci/woodpecker/">
|
||||||
|
<img alt="Woodpecker" src="https://raw.githubusercontent.com/woodpecker-ci/woodpecker/master/docs/static/img/logo.svg" width="220"/>
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<br/>
|
||||||
|
<p align="center">
|
||||||
|
<a href="https://wp.laszlo.cloud/woodpecker-ci/woodpecker" title="Build Status">
|
||||||
|
<img src="https://wp.laszlo.cloud/api/badges/woodpecker-ci/woodpecker/status.svg">
|
||||||
|
</a>
|
||||||
|
<a href="https://discord.gg/fcMQqSMXJy" title="Join the Discord chat at https://discord.gg/fcMQqSMXJy">
|
||||||
|
<img src="https://img.shields.io/discord/838698813463724034.svg">
|
||||||
|
</a>
|
||||||
|
<a href="https://goreportcard.com/badge/github.com/woodpecker-ci/woodpecker" title="Go Report Card">
|
||||||
|
<img src="https://goreportcard.com/badge/github.com/woodpecker-ci/woodpecker">
|
||||||
|
</a>
|
||||||
|
<a href="https://godoc.org/github.com/woodpecker-ci/woodpecker" title="GoDoc">
|
||||||
|
<img src="https://godoc.org/github.com/woodpecker-ci/woodpecker?status.svg">
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/woodpecker-ci/woodpecker/releases/latest" title="GitHub release">
|
||||||
|
<img src="https://img.shields.io/github/v/release/woodpecker-ci/woodpecker?sort=semver">
|
||||||
|
</a>
|
||||||
|
<a href="https://hub.docker.com/r/woodpeckerci/woodpecker-server" title="Docker pulls">
|
||||||
|
<img src="https://img.shields.io/docker/pulls/woodpeckerci/woodpecker-server">
|
||||||
|
</a>
|
||||||
|
<a href="https://opensource.org/licenses/Apache-2.0" title="License: Apache-2.0">
|
||||||
|
<img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg">
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<br/>
|
||||||
|
|
||||||
# Woodpecker
|
# Woodpecker
|
||||||
|
|
||||||
A fork of the Drone CI system.
|
> Woodpecker is a community fork of the Drone CI system.
|
||||||
|
|
||||||
- Based on the v0.8 code tree
|
|
||||||
- Fully Apache 2.0, no tiers
|
|
||||||
|
|
||||||
[![Go Report Card](https://goreportcard.com/badge/github.com/woodpecker-ci/woodpecker)](https://goreportcard.com/report/github.com/woodpecker-ci/woodpecker) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![https://discord.gg/fcMQqSMXJy](https://img.shields.io/discord/838698813463724034.svg)](https://discord.gg/fcMQqSMXJy)
|
|
||||||
|
|
||||||
![woodpecker](docs/docs/woodpecker.png)
|
![woodpecker](docs/docs/woodpecker.png)
|
||||||
|
|
||||||
## .drone.yml
|
## Usage
|
||||||
|
|
||||||
- Place your pipeline in a file named `.drone.yml` in your repository
|
### .woodpecker.yml
|
||||||
|
|
||||||
|
- Place your pipeline in a file named `.woodpecker.yml` in your repository
|
||||||
- Pipeline steps can be named as you like
|
- Pipeline steps can be named as you like
|
||||||
- Run any command in the commands section
|
- Run any command in the commands section
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# .drone.yml
|
# .woodpecker.yml
|
||||||
pipeline:
|
pipeline:
|
||||||
build:
|
build:
|
||||||
image: debian
|
image: debian
|
||||||
|
@ -28,7 +56,7 @@ pipeline:
|
||||||
- echo "Testing.."
|
- echo "Testing.."
|
||||||
```
|
```
|
||||||
|
|
||||||
## Build steps are containers
|
### Build steps are containers
|
||||||
|
|
||||||
- Define any Docker image as context
|
- Define any Docker image as context
|
||||||
- Install the needed tools in custom Docker images, use them as context
|
- Install the needed tools in custom Docker images, use them as context
|
||||||
|
@ -42,13 +70,13 @@ pipeline:
|
||||||
- aws help
|
- aws help
|
||||||
```
|
```
|
||||||
|
|
||||||
## File changes are incremental
|
### File changes are incremental
|
||||||
|
|
||||||
- Woodpecker clones the source code in the beginning pipeline
|
- Woodpecker clones the source code in the beginning pipeline
|
||||||
- Changes to files are persisted through steps as the same volume is mounted to all steps
|
- Changes to files are persisted through steps as the same volume is mounted to all steps
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# .drone.yml
|
# .woodpecker.yml
|
||||||
pipeline:
|
pipeline:
|
||||||
build:
|
build:
|
||||||
image: debian
|
image: debian
|
||||||
|
@ -60,7 +88,7 @@ pipeline:
|
||||||
- cat myfile
|
- cat myfile
|
||||||
```
|
```
|
||||||
|
|
||||||
## Plugins are straightforward
|
### Plugins are straightforward
|
||||||
|
|
||||||
- If you copy the same shell script from project to project
|
- If you copy the same shell script from project to project
|
||||||
- Pack it into a plugin instead
|
- Pack it into a plugin instead
|
||||||
|
@ -80,7 +108,7 @@ kubectl apply -f $PLUGIN_TEMPLATE
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# .drone.yml
|
# .woodpecker.yml
|
||||||
pipeline:
|
pipeline:
|
||||||
deploy-to-k8s:
|
deploy-to-k8s:
|
||||||
image: laszlocloud/my-k8s-plugin
|
image: laszlocloud/my-k8s-plugin
|
||||||
|
@ -91,14 +119,18 @@ pipeline:
|
||||||
|
|
||||||
https://woodpecker-ci.github.io/
|
https://woodpecker-ci.github.io/
|
||||||
|
|
||||||
## Who uses Woodpecker
|
## Who uses Woodpecker?
|
||||||
|
|
||||||
Currently, I know of one organization using Woodpecker. With 50+ users, 130+ repos and more than 1100 builds a week.
|
Currently, I know of one organization using Woodpecker. With 50+ users, 130+ repos and more than 1100 builds a week.
|
||||||
|
|
||||||
Leave a [comment](https://github.com/woodpecker-ci/woodpecker/issues/122) if you're using it.
|
Leave a [comment](https://github.com/woodpecker-ci/woodpecker/issues/122) if you're using it.
|
||||||
|
|
||||||
|
## Contribution
|
||||||
|
|
||||||
|
See [Contributing Guide](CONTRIBUTING.md)
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Woodpecker is Apache 2.0 licensed with the source files in this repository having a header indicating which license they are under and what copyrights apply.
|
Woodpecker is Apache 2.0 licensed with the source files in this repository having a header indicating which license they are under and what copyrights apply.
|
||||||
|
|
||||||
Files under the `docs/` folder is licensed under Creative Commons Attribution-ShareAlike 4.0 International Public License. It is a derivative work of the https://github.com/drone/docs git repository.
|
Files under the `docs/` folder are licensed under Creative Commons Attribution-ShareAlike 4.0 International Public License.
|
||||||
|
|
Loading…
Reference in a new issue