Follow us
Breaking
Tech News

The shift to Gitea Actions and self-hosted ARM runners

DevOps teams are migrating to Gitea to gain infrastructure control using self-hosted ARM runners. Utilizing hardware like Raspberry Pi 3 with 2 CPU cores and 1GB of memory allows for efficient, low-cost CI/CD workflows and DevSecOps adoption.

Share

Moving away from GitHub CI

Teams migrate to Gitea to gain control over their DevOps lifecycle. Gitea provides a self-hosted platform for Git hosting, code review, team collaboration, and CI/CD. Developers wrote Gitea in the Go language, which supports x86, amd64, ARM, RISC-V 64, and PowerPC architectures. Gitea also runs on Linux, macOS, Windows, FreeBSD, and OpenBSD. I see developers using Raspberry Pi 3 hardware to handle small workloads. This setup requires only 2 CPU cores and 1GB of memory. Such lightweight design makes it ideal for resource-limited environments. I find the move to self-hosted ARM runners a practical way to manage infrastructure costs while maintaining high efficiency. (You already know the importance of low latency for CI/CD.) You can use the platform for everything from planning to production, including Git hosting, code review, team collaboration, package registry, and CI/CD. The software allows for managing repositories, browsing commit history, reviewing and merging code, and managing collaborators or branches. Users can also utilize labels, cherry-pick, hooks, and integrated collaboration tools within their workflow. This flexibility allows individual developers and corporate teams to tailor the environment to their specific needs. The interface remains intuitive, making it easy for teams to manage code projects without complex configuration or dependency issues.

Gitea Actions and DevSecOps capabilities

Gitea Actions provides a built-in CI/CD system that remains compatible with GitHub Actions. You write workflows in YAML format and reuse plugins from any Git website. The Enterprise version adds vulnerability scanning for dependencies in several languages including Go, NPM, Android, Maven, Pypi, and RubyGems. I find the branch protection via mandatory code signing and WebAuthn-based two-step verification helpful for security-conscious teams. The platform also integrates with CI services like Drone, Woodpecker, and Jenkins to improve existing workflows. You can download Actions plugins from any Git site.

Package Type
Cargo, Chef, Composer, Conan
Conda, Container, Helm, Maven
npm, NuGet, Pub, PyPI
RubyGems, Vagrant

DevSecOps teams use Gitea to manage the software lifecycle from planning to production. It includes issue tracking with kanban boards, tickets, milestones, and dependency management. Code review supports both Pull Request and AGit workflows, allowing users to view code online and submit comments. The system provides task management through kankan boards and issues that include branches, tags, milestones, assignments, time tracking, due dates, and various dependencies to ensure that teams organize their development projects effectively for the entire engineering department. I note that users manage collaborators and branches directly within the interface. Gitea supports more than 20 different types of public or private packages. These include Cargo, Chef, Composer, Conan, Conda, Container, Helm, Maven, npm, NuGet, Pub, PyPI, RubyGems, and Vagrant. The system also manages user permissions and access control lists to protect code and data. Does the reliance on YAML for all automation create a bottleneck for teams used to more visual tools?

Infrastructure and enterprise deployment

Deployment requires Git 2.0.0 or higher, while Git Large File Storage needs version 2.1.2 or above. For those needing graphical commit history, version 2.18 or higher works. Gitea supports various database drivers such as SQLite, MySQL, PostgreSQL, TiDB, and MS SQL. The Enterprise tier provides dedicated support through email and emergency telephone or remote assistance, while also providing priority notifications for security bug fixes, installation assistance, and upgrade assistant services for large organizations. You must accept a 1-year commitment for these services with online payment.

Feature Requirement / Detail
Git Version 2.0.0+
Git LFS 2.1.2+
Database SQLite, MySQL, PostgreSQL, etc.
Commitment 1-year (Enterprise)

I would skip the managed environment if your team requires absolute autonomy over your data and infrastructure. The software allows you to configure everything through a single configuration file. You can also customize site themes and interface languages easily. The platform integrates with Slack, Discord, and MS Teams for communication. I see many small companies utilizing the discounts available for non-profits and small businesses. I find the Kubernetes AutoScaling Runners useful for teams that need to scale their deployment models. The platform also supports multiple languages to assist with internationalization. Developers can use the official Gitea CLI tool or the Go-SDK to extend functionality. The user interface utilizes jQuery, Fomantic UI, and Vue3 components to provide a clean experience. This combination of features allows for efficient management of the entire software development lifecycle.

Share

Technewsdaily

Senior tech writer covering AI, gadgets and cybersecurity. Breaking down the news that matters, every day.