Gitea Actions artifacts upload fails (artifacts server) in CI
Gitea stores workflow artifacts through its own artifacts endpoint, gated by [actions] ARTIFACT_STORAGE and the artifacts setting in app.ini. If it is not enabled or storage is misconfigured, upload-artifact fails.
What this error means
An upload-artifact step fails with an artifacts API error or a storage failure, while other steps succeed. Downloads later report the artifact was never stored.
Failed to upload artifact: unexpected status 500 from artifacts endpoint
# Gitea artifacts storage not enabled/configuredCommon causes
Artifact storage is not enabled on the instance
Without the artifacts setting configured in app.ini, the artifacts endpoint has no backend and uploads fail.
A misconfigured storage path or backend
A local path that is not writable, or an object-storage backend with bad credentials, makes the upload error.
How to fix it
Enable artifacts storage in app.ini
- Configure the artifacts storage under
[actions](and storage section). - Point it at a writable local path or valid object storage.
- Restart Gitea and re-run the upload step.
[actions]
ENABLED = true
[storage.actions_artifacts]
STORAGE_TYPE = local
PATH = /var/lib/gitea/artifactsFix storage permissions or credentials
Ensure the Gitea process can write the artifacts path, or that object-storage credentials are valid.
chown -R git:git /var/lib/gitea/artifactsHow to prevent it
- Configure artifacts storage when enabling Actions.
- Verify the storage path is writable by the Gitea user.
- Test an upload/download after configuring storage.