2022-04-09 03:23:22 -07:00
---
eleventyNavigation:
2022-07-17 14:48:10 -07:00
key: CI
title: Working with Codeberg's CI
icon: arrows-spin
order: 65
2022-04-09 03:23:22 -07:00
---
2025-06-14 02:38:21 -07:00
Every piece of code should be tested regularly. Ideally developers already implement unit-tests to test the
functionality of code sections.
Some projects even implement a suite of integration tests, testing whether the code in different parts of the software
works as a whole and (still) provides the functionality the software promises to deliver.
2024-06-12 13:02:39 -07:00
Running these tests regularly (or continuously) is the job of a Continuous Integration (CI) solution.
2025-06-14 02:38:21 -07:00
The results of the tests are displayed to the project members and maintainers, enabling them to identify problems and
react if errors occur.
2022-04-09 03:23:22 -07:00
2024-01-31 13:39:10 -08:00
## Using Codeberg's instance of Woodpecker CI
2022-04-09 03:23:22 -07:00
2024-01-31 18:44:20 -08:00
Codeberg provides a [Woodpecker CI ](https://woodpecker-ci.org ) instance at [ci.codeberg.org ](https://ci.codeberg.org/ ).
2024-01-31 13:39:10 -08:00
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 ).
2024-06-12 13:02:39 -07:00
After submitting, a Codeberg volunteer will review your request and grant you access if your use case is appropriate.
2024-01-31 13:39:10 -08:00
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 ).
2025-06-14 02:38:21 -07:00
If your request gets approved, you will be able to login to [ci.codeberg.org ](https://ci.codeberg.org )
via your Codeberg account.
To start builds for your repository, you must enable them in Woodpecker specifically using < https: / / ci . codeberg . org / repos / add > .
Repositories owned by your codeberg account should automatically be available as options to select.
2024-01-31 13:39:10 -08:00
### Caveats
2022-04-09 03:23:22 -07:00
2023-06-29 16:12:29 -07:00
For the usage of our Woodpecker instance, keep the following in mind:
2025-06-14 02:38:21 -07:00
- **CI access is provided as-is and might break at any time** and for an undefined period of time, due to server issues,
2025-09-19 04:19:37 -07:00
for testing and maintenance purposes or human error.
2025-06-14 02:38:21 -07:00
- **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).
Therefore, please consider twice how to create a good balance between ensuring code quality for your project and
2025-09-19 04:19:37 -07:00
resource usage.
2025-06-14 02:38:21 -07:00
- The CI service requires manual onboarding and Woodpecker has limited Role-Based Access Control (RBAC) capabilities,
which will be a problem for projects with a team-based permission structure or many individual collaborators.
2025-07-02 07:27:43 -07:00
- `linux/amd64` is the sole build target on the Woodpecker CI deployment.
2024-01-31 13:39:10 -08:00
Issues and general feedback should be reported in our
[dedicated Codeberg CI feedback repository ](https://codeberg.org/Codeberg-CI/feedback ).
### Usage
If you are curious about Woodpecker or are already using a third-party Woodpecker instance,
2025-06-14 02:38:21 -07:00
please consult [Woodpecker's documentation ](https://woodpecker-ci.org/docs/intro ).
If you wish to see examples of integrating Woodpecker-CI with codeberg, please consult the [Codeberg-CI examples repository. ](https://codeberg.org/Codeberg-CI/examples )
2022-04-09 03:23:22 -07:00
2025-06-16 16:12:39 -07:00
### Adding Self-Hosted Agents
2025-11-21 03:35:05 -08:00
Woodpecker enables users and organizations to add their own agents for running workflows.
This is recommended for resource-intensive tasks, or if you want to run jobs on specific architectures.
2025-06-16 16:12:39 -07:00
More information can be found on the [Adding Self-Hosted Agents page ](./agents ).
2024-01-31 13:39:10 -08:00
### Custom Woodpecker Instances
2023-06-29 16:12:29 -07:00
2024-01-31 13:39:10 -08:00
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
2025-03-25 17:44:44 -07:00
[Forgejo integration documentation ](https://woodpecker-ci.org/docs/administration/configuration/forges/forgejo )
2024-01-31 13:39:10 -08:00
for more information.
2023-06-29 16:12:29 -07:00
2024-02-17 14:04:10 -08:00
## Using Forgejo Actions
2023-06-29 16:12:29 -07:00
2024-03-12 10:58:13 -07:00
Forgejo, the software Codeberg is built on, offers a CI/CD feature called Actions.
2025-11-21 03:35:05 -08:00
Forgejo Actions can be used with self-hosted runners and Codeberg also provides a hosted version in
a limited fashion in open alpha.
2023-06-29 16:12:29 -07:00
2025-07-02 07:27:43 -07:00
Further information such as how to run Forgejo Actions is available in [Using Forgejo Actions (Self-hosted) page ](./actions ).
2025-11-21 03:35:05 -08:00
If you want to learn more about the differences between the Woodpecker CI and Forgejo Actions,
you can [find those on the actions meta repository ](https://codeberg.org/actions/meta ).