Codeberg CI: Improve usage and request instructions (#381)

Closes https://codeberg.org/Codeberg-CI/feedback/issues/153

Co-authored-by: Panagiotis "Ivory" Vasilopoulos <git@n0toose.net>
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Reviewed-on: https://codeberg.org/Codeberg/Documentation/pulls/381
Co-authored-by: quecomet <quecomet@proton.me>
Co-committed-by: quecomet <quecomet@proton.me>
This commit is contained in:
quecomet 2024-01-31 21:39:10 +00:00 committed by Panagiotis "Ivory" Vasilopoulos
parent bf5fe32d6a
commit 4a11765382

View file

@ -12,22 +12,43 @@ Some projects even implement a suite of integration tests, testing whether the c
Running these tests regularly (or continuously) is the job of a Continuous Integration solution.
The results of the tests are displayed to the project members and maintainers, enabling them to identify problems and react if errors occur.
## Using Codeberg's instance of Woodpecker CI
## Using Codeberg's instance of Woodpecker CI
Codeberg currently provides an instance of [Woodpecker CI](https://woodpecker-ci.org/) to everyone who needs it.
You need to request access,
because we want to keep resource abuse minimal.
Please check out [our request procedure](https://codeberg.org/Codeberg-e.V./requests)!
Codeberg provides a [Woodpecker CI](https://woodpecker-ci.org) instance at [ci.codeberg.org]((https://ci.codeberg.org/).
Onboarding requires a few manual steps, as to prevent the abuse of Codeberg's limited resources.
You will need to request access [by filling out this form](https://codeberg.org/Codeberg-e.V./requests/issues/new?template=ISSUE_TEMPLATE%2fWoodpecker-CI.yaml).
Eventually, a Codeberg volunteer will review your request and grant you access.
In order to ensure a fast approval,
please take a minute to read about [the criteria that your project has to adhere to](https://codeberg.org/Codeberg-e.V./requests#woodpecker-ci).
After your request gets approved, you will be able to login to [ci.codeberg.org](https://ci.codeberg.org).
To start builds for your repository, you must enable them in Woodpecker specifically using https://ci.codeberg.org/repos/add.
### Caveats
For the usage of our Woodpecker instance, keep the following in mind:
- CI access is **provided as-is and might break at any time** and for an undefined period of time, due to server issues, for testing and maintenance purpose or human error. Our CI service is not of the highest priority right now.
- **Resource usage must be reasonable** for the intended use-case. This is determined on a case-by-case basis, but please be aware that CI uses a lot of computing resources (cloning your repo and container, installing all your required tools, building and throwing everything away) which costs us money and does damage to our precious environment. Therefore, please consider twice how to create a good balance between ensuring code quality for your project and resource usage therefore.
- The service is in an early phase, which means it might not yet be suited for large and complex projects. Please report all issues you face to us, so you can be a part of the improvement!
- CI access is **provided as-is and might break at any time** and for an undefined period of time, due to server issues, for testing and maintenance purpose or human error.
- **Resource usage must be reasonable** for the intended use-case. CI requires substantial computing resources (cloning the repo and pulling the image, installing required tools, building and throwing everything away). Please try to ensure a good balance between code quality/automation and resource usage. Therefore, please consider twice how to create a good balance between ensuring code quality for your project and resource usage therefore.
- The CI service requires manual onboarding and Woodpecker has limited RBAC capabilities, which will be a problem for projects with a team-based permission structure or many individual collaborators.
Issues and general feedback should be reported in our
[dedicated Codeberg CI feedback repository](https://codeberg.org/Codeberg-CI/feedback).
If you are just curious about Woodpecker or already got access to a Woodpecker instance, the Woodpecker project has a [great documentation](https://woodpecker-ci.org/docs/intro) on how to use Woodpecker in your repositories. For now,
refer to the [Gitea VCS integration section](https://woodpecker-ci.org/docs/administration/forges/gitea).
### Usage
If you are curious about Woodpecker or are already using a third-party Woodpecker instance,
please consult [Woodpecker's documentation](https://woodpecker-ci.org/docs/intro).
### Custom Woodpecker Instances
You can alternatively host your own Woodpecker instance and link it to Codeberg.
This will give you a lot more freedom and capabilities with the downside of having to utilize your own hardware.
Please consult Woodpecker's
[Gitea integration documentation](https://woodpecker-ci.org/docs/administration/forges/gitea)
for more information.
(Codeberg is running Forgejo, a fork of Gitea)
## Using Codeberg / Forgejo / Gitea Actions