docs(forgejo): 🌐Add links to Forgejo, Codeberg, and GARM
All checks were successful
ci / build (push) Successful in 55s

This commit is contained in:
Daniel Sy 2025-11-17 16:35:38 +01:00
parent 53bbb6de91
commit 5d80a899c5
Signed by: Daniel.Sy
GPG key ID: 1F39A8BBCD2EE3D3

View file

@ -10,21 +10,20 @@ categories: ["Workpackage Results"]
Here is the management summary of the work package results: Here is the management summary of the work package results:
* **📈 Strategic Selection:** We chose **Forgejo** as the project's self-hosted Git service. This decision was based on several key strategic factors: * **📈 Strategic Selection:** We chose **[Forgejo](https://forgejo.org/)** as the project's self-hosted Git service. This decision was based on several key strategic factors:
* **EU-Based & Data Sovereignty:** The project is stewarded by **Codeberg e.V.**, a non-profit based in Berlin, Germany. This is a massive win for our "funding agency" stakeholders, as it aligns with **GDPR, compliance, and data sovereignty goals**. It's governed by EU laws, not a US tech entity. * **EU-Based & Data Sovereignty:** The project is stewarded by **[Codeberg e.V.](https://docs.codeberg.org/getting-started/what-is-codeberg/)**, a non-profit based in Berlin, Germany. This is a massive win for our "funding agency" stakeholders, as it aligns with **GDPR, compliance, and data sovereignty goals**. It's governed by EU laws, not a US tech entity.
* **True Open Source (GPL v3+):** Forgejo is a community-driven fork of Gitea, created to *guarantee* it stays 100% free and open-source (FOSS). * **True Open Source (GPL v3+):** Forgejo is a community-driven fork of Gitea, created to *guarantee* it stays 100% free and open-source (FOSS).
* **License Protects Our Contributions:** It uses the **GPL v3+ "copyleft" license**. This is *perfect* for our collaboration goal. It legally ensures that the features we contribute back (like GARM support) can **never be taken and locked into a proprietary, closed-source product by anyone**. It protects our work and keeps the community open. * **License Protects Our Contributions:** It uses the **GPL v3+ "copyleft" license**. This is *perfect* for our collaboration goal. It legally ensures that the features we contribute back (like GARM support) can **never be taken and locked into a proprietary, closed-source product by anyone**. It protects our work and keeps the community open.
* **⚙️ Core Use Case:** Forgejo is used for all project source code **versioning** and as the backbone for our **CI/CD (Continuous Integration/Continuous Deployment)** pipelines. * **⚙️ Core Use Case:** Forgejo is used for all project source code **versioning** and as the backbone for our **CI/CD (Continuous Integration/Continuous Deployment)** pipelines.
* **🛠️ Key Extension (GARM Support):** The main technical achievement was integrating **GARM (Git-based Actions Runner Manager)**. This was *not* supported by Forgejo out-of-the-box. * **🛠️ Key Extension (GARM Support):** The main technical achievement was integrating **[GARM (Git-based Actions Runner Manager)](https://github.com/cloudbase/garm)**. This was *not* supported by Forgejo out-of-the-box.
* **✨ Required Enhancements:** To make GARM work, our team developed and implemented several critical features: * **✨ Required Enhancements:** To make GARM work, our team developed and implemented several critical features:
* Webhook support for workflow events (to tell runners when to start). * Webhook support for workflow events (to tell runners when to start).
* Support for ephemeral runners (for secure, clean-slate builds every time). * Support for ephemeral runners (for secure, clean-slate builds every time).
* GitHub API-compatible endpoints (to allow the runners to register themselves correctly). * GitHub API-compatible endpoints (to allow the runners to register themselves correctly).
* **💖 Community Contribution:** We didn't just keep this for ourselves! We contributed all these features **directly back to the upstream Forgejo community**. This wasn't just a code-dump; we actively collaborated via **issues**, **feature requests**, and **pull requests (PRs) on codeberg.org**. * **💖 Community Contribution:** We didn't just keep this for ourselves! We contributed all these features **directly back to the upstream Forgejo community**. This wasn't just a code-dump; we actively collaborated via **issues**, **feature requests**, and **pull requests (PRs) on [codeberg.org](https://codeberg.org/)**.
* **🚀 Bonus Functionality:** We also implemented **artifact caching**. This configures Forgejo to act as a **pull-through proxy** for remote container registries (like Docker Hub), which seriously speeds up our build times and saves bandwidth. * **🚀 Bonus Functionality:** We also implemented **artifact caching**. This configures Forgejo to act as a **pull-through proxy** for remote container registries (like Docker Hub), which seriously speeds up our build times and saves bandwidth.