[Dune-devel] Gitlab: Migrate artifacts, packages, (dependency proxy) to S3-compat object storage

Oliver Sander oliver.sander at tu-dresden.de
Tue Jun 16 09:29:28 CEST 2026


Thanks Ansgar!

I do wonder whether the >150GB of artifacts are still needed? Is it 
feasible to do some sort of garbage collection here?

Best,
Oliver

On 6/15/26 17:45, Ansgar Burchardt wrote:
> Hi,
> 
> the migration is done. I also had to allow the shared CI runner to 
> access the S3 domain.
> 
> Disk usage now looks like this:
> 
> # df -h /srv/data
> 
> Filesystem      Size  Used Avail Use% Mounted on
> 
> /dev/sdb1       300G   63G  231G  22% /srv/data
> 
> 
> And on the S3 side:
> 
> | Bucket name                  | Number of objects | Size        |
> 
> |------------------------------|-------------------|-------------|
> 
> | dune-gitlab-artifacts        |            667385 | 171.222 GiB |
> 
> | dune-gitlab-dependency-proxy |                 0 |   0.000 GiB |
> 
> | dune-gitlab-packages         |              7970 |  44.667 GiB |
> 
> | dune-gitlab-registry         |            118906 | 170.384 GiB |
> 
> |------------------------------|-------------------|-------------|
> 
> | ∑                            |            794259 | 386.263 GiB |
> 
> 
> We currently have a quota of 2.5 TB.
> 
> I also configured a policy that objects in S3 will only be marked for 
> deletion and only be removed after 90 days. This should be sufficient in 
> case Gitlab deletes data due to a software malfunction.
> 
> 
> Some inconsistencies were found (and still exist):
> 
> ~7 GiB of CI artifacts on disk, but missing in database (not moved to S3).
> 
> ~40 packages in database, but missing from disk.
> 
> Ansgar
> 
> On Thu, 2026-06-11 at 15:34 +0000, Ansgar Burchardt wrote:
>> Hi,
>>
>> the virtual disk for Gitlab data is fairly full:
>>
>> root at dune-gitlab <mailto:root at dune-gitlab>:~# df -h /srv/data
>> Filesystem      Size  Used Avail Use% Mounted on
>> /dev/sdb1       300G  264G   32G  90% /srv/data
>>
>> A large chunk is CI job artifacts and packages:
>>
>> root at dune-gitlab <mailto:root at dune-gitlab>:~# du -shc /srv/data/gitlab/gitlab-rails/shared/*
>> 157G	/srv/data/gitlab/gitlab-rails/shared/artifacts
>> 3.3G	/srv/data/gitlab/gitlab-rails/shared/cache
>> 0	/srv/data/gitlab/gitlab-rails/shared/ci_secure_files
>> 0	/srv/data/gitlab/gitlab-rails/shared/dependency_proxy
>> 0	/srv/data/gitlab/gitlab-rails/shared/encrypted_settings
>> 0	/srv/data/gitlab/gitlab-rails/shared/external-diffs
>> 2.7G	/srv/data/gitlab/gitlab-rails/shared/lfs-objects
>> 47G	/srv/data/gitlab/gitlab-rails/shared/packages
>> 0	/srv/data/gitlab/gitlab-rails/shared/pages
>> 0	/srv/data/gitlab/gitlab-rails/shared/registry
>> 0	/srv/data/gitlab/gitlab-rails/shared/terraform_state
>> 0	/srv/data/gitlab/gitlab-rails/shared/tmp
>> 209G	total
>>
>> For comparison the Git repository data and Gitlab database are much 
>> smaller:
>>
>> root at dune-gitlab <mailto:root at dune-gitlab>:~# du -shc /srv/data/gitlab/git-data /srv/data/gitlab/postgresql
>> 14G	/srv/data/gitlab/git-data
>> 15G	/srv/data/gitlab/postgresql
>> 29G	total
>>
>> Instead of resizing the disk, I would like to migrate some more data 
>> to S3-compatible object storage. We already use object storage for the 
>> Docker registry.
>>
>> I would migrate the following objects:
>>
>> 1. Job artifacts (CI/CD job artifacts including logs).
>> 2. Project packages (PyPI, ...)
>> 3. Dependency proxy (currently unused, just configure it to use object 
>> storage).
>>
>> I would keep Git LFS objects on the disk as the S3-compat storage has 
>> redundancy (to cover disk failure), but no full backups (when 
>> something deletes too much). I don't think losing CI/CD job artifacts 
>> or packages is too bad, just like with Docker images.
>>
>> The migration should be possible while Gitlab runs. It is also 
>> possible to migrate back to local storage.
>>
>> See the Gitlab documentation for details: https://docs.gitlab.com/ 
>> administration/object_storage/ <https://docs.gitlab.com/ 
>> administration/object_storage/>
>>
>> Regards,
>> Ansgar
>>
> 
> _______________________________________________
> Dune-devel mailing list
> Dune-devel at lists.dune-project.org
> https://lists.dune-project.org/mailman/listinfo/dune-devel




More information about the Dune-devel mailing list