GitLab.com Backup Strategy?

I’m new to GitLab via gitlab.com and am wondering two things:

  1. What is GitLab’s snapshot/backup practice for gitlab.com?
  2. How can I most easily generate full backups of all projects along with any wikis, issues, etc.?

For #2, I assume I’ll tie something to cron from a separate web server that can rotate archives in a remote location. I’m only wondering about the best way to generate backup archives, like the rake backup scheme but for gitlab.com.

Is this a super dumb question? I know I’m currently one of the free tier jerks, but I suspect others are considering backup schemes for gitlab.com accounts…

:grin:

jokes aside, that’s not a dumb question at all. It’s just that GitLab admins do not lurk in the forum.
Reading Moving all your data, 9TB edition you can see among others that

We do file-based backups every week where we take a block device snapshot, mount the snapshot and send it across with Rsync.

Also read Sytse’s answer Moving all your data, 9TB edition

Maybe @jacobvosmaer cah shed more light.

Thanks again, @axil!

I’m happy with “there is one” as a backup policy, since I can’t really demand anything for free. Repositories are obviously easy to replicate for backup, I’m just wondering if/how others deal with wikis and issues and all that. The CE backup seems like a lovely thing, but that it naturally needs to be run along with a CE install.

I found this thread via a Google search for gitlab.com” backup and then later discovered a pretty simple way to generate a backup/archive of a project.

Use the “Export project” feature from your project’s “General” settings; from the info for that feature on the relevant settings page:

The following items will be exported:

  • Project and wiki repositories
  • Project uploads
  • Project configuration including web hooks and services
  • Issues with comments, merge requests with diffs and comments, labels, milestones, snippets, and other project entities
  • LFS objects

The following items will NOT be exported:

  • Job traces and artifacts
  • Container registry images
  • CI variables
  • Any encrypted tokens

The export project feature is also available via the GitLab API (so you can automate backing-up your projects):

2 Likes

Aha, this is great! Thanks for posting Kenny, I had no idea you could export projects via API.

Thanks for the link!

What scope of the personal access token is needed? I.e. does it only work with the “api” scope or is a different scope sufficient?