Forgejo
forgejo.org · 2 records in CI runners, Storage · JSON
Records 2
- self-hosted, last resortForgejo and Gitea Actions (self-hosted)
CI runnersverdict qualifiesfree tieridentity anonymousno cardevidence documentedstale on 2026-12-05
- self-hosted, last resortGitea / Forgejo self-hosted with any S3 LFS backend
Storageverdict qualifies-with-caveatfree tieridentity email?card?limit per-object-capevidence reportedstale on 2026-11-05
Forgejo and Gitea Actions (self-hosted)
CI runners- Free allowance
- MIT for Gitea and GPL for Forgejo, with a GitHub-Actions-compatible workflow syntax; unlimited on your own runners
- Verdict
- self-hosted, last resortverdict qualifies: usable as stated; the read path was probed. Self-hosted options are listed last, because this site is for users who have no hardware.
- Cost
- free tier
- Identity
- anonymousno card, no phone
- Binding limit
- noneno named constraint binds
- Evidence
- documented3 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-12-05checked 2026-11-04 (live); stale on 2026-12-05
| Free tier | MIT for Gitea and GPL for Forgejo, with a GitHub-Actions-compatible workflow syntax; unlimited on your own runners unit unlimited; metered on none |
|---|---|
| Price | none stated |
| Limits |
|
| Identity | anonymous the software needs no account |
| Egress | whatever the runner host charges |
| Per-object cap | no cap from the software; the runner host is the ceiling |
| Retention | whatever the runner host retains |
| Interface | git, cli a .forgejo/workflows or .gitea/workflows YAML; the act runner; a compatible subset of GitHub Actions |
| Tooling | the forgejo or act runner binary; docker or a host backend |
| Composes with | Actions syntax without GitHub, which lets a workflow move between a free hosted runner and your own machine without a rewrite |
| Reliability | compatibility with GitHub Actions is a documented subset, so a workflow that runs on GitHub may need edits |
| Notes | The compatibility is the value and the subset is the cost. A workflow that depends on a GitHub-only action does not run. |
| Evidence note | documented the Forgejo Actions user guide was read; Codeberg's hosted instance runs the same software. |
| Parsed numbers |
|
Evidence 3
| date | source | what it proved |
|---|---|---|
| 2026-10-22 | forgejo.org/docs/latest/user/actions/ | Forgejo Actions is GitHub-Actions-compatible with documented differences; runners are user-provided |
| 2026-10-22 | codeberg.org/actions/meta | Codeberg's hosted runners use ghcr.io/catthehacker/ubuntu:act-latest to provide a compatibility level with GitHub Actions, and Docker-in-Docker is not officially supported |
| 2026-11-04 | forgejo.org/docs/latest/user/actions/ | Forgejo Actions is not identical to GitHub Actions, so a workflow may need edits |
- Free allowance
- Unlimited by default:
quota.default.TOTAL = -1means unlimited, and the soft-quota feature is 'currently not yet enabled by default'. - Verdict
- self-hosted, last resortverdict qualifies-with-caveat: usable, with a named limit or an unprobed read path. Self-hosted options are listed last, because this site is for users who have no hardware.
- Cost
- free tier
- Identity
- email?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- per-object-capNo per-file cap unless you set one
- Evidence
- reported2 sources; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | Unlimited by default: quota.default.TOTAL = -1 means unlimited, and the soft-quota feature is 'currently not yet enabled by default'. You supply the disk/object store, so bytes = your infrastructure.unit unlimited; metered on stored-bytes |
|---|---|
| Price | none stated |
| Limits |
Soft-quota only: 'Forgejo checks the quota usage only before an action is executed, but it will allow a started action to complete' — so it can be overshot. No per-file cap unless you set one. |
| Identity | email (placeholder) not published |
| Egress | Yours to pay for — unless the LFS backend is one of the free S3 endpoints (HF buckets, IA), in which case egress is the backend's and is free/CDN. |
| Per-object cap | No per-file cap unless you set one |
| Retention | not stated |
| Interface | s3-compatible, rest, git git |
| Tooling | Gitea/Forgejo binaries (single Go binary), git-lfs client, S3-compatible LFS storage config ([lfs] STORAGE_TYPE=minio). REST API + Swagger for full automation. Gitea Cloud offers a 30-day trial, not free. |
| Composes with | The pattern that makes 500 GB+ real: self-host the forge on a free-tier VM (or any always-on box) and set LFS storage to a free S3 endpoint. The forge holds ~metadata only; the bytes never touch your disk. Gitea's LFS_MAX_FILE_SIZE/LFS_START_SERVER are config, not policy. |
| Reliability | Quota feature is explicitly 'still in development' with 'little support for early prevention of operations in the UI'. Self-hosted means a dead VM = dead forge, but the LFS blobs survive in the object store. |
| Parsed numbers |
|
Evidence 2
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | forgejo.org/docs/latest/admin/advanced/quota/ | 'quota.default.TOTAL is -1 (unlimited) by default'; soft-quota semantics quoted |
| 2026-10-21 | forgejo.org/docs/latest/admin/setup/storage/ | storage backend configuration for LFS/attachments |
Unknown values 3
- per object cap notes: the field may be stated in a source that was not read
- retention notes: the field may be stated in a source that was not read
- retention stated: the field may be stated in a source that was not read