Просмотр исходного кода

feat: prune empty dir when migrate to s3 storage

OTW many empty dirs are kept
pull/4987/head
parisni 3 дней назад
committed by Slavi Pantaleev
Родитель
Сommit
90bcb1f4ee
2 измененных файлов: 7 добавлений и 0 удалений
  1. +2
    -0
      docs/configuring-playbook-synapse-s3-storage-provider.md
  2. +5
    -0
      roles/custom/matrix-synapse/templates/synapse/ext/s3-storage-provider/bin/migrate.j2

+ 2
- 0
docs/configuring-playbook-synapse-s3-storage-provider.md Просмотреть файл

@@ -177,6 +177,8 @@ By default, we periodically ensure that all local files are uploaded to S3 and a
- … invoked via the `matrix-synapse-s3-storage-provider-migrate.service` service - … invoked via the `matrix-synapse-s3-storage-provider-migrate.service` service
- … triggered by the `matrix-synapse-s3-storage-provider-migrate.timer` timer, every day at 05:00 - … triggered by the `matrix-synapse-s3-storage-provider-migrate.timer` timer, every day at 05:00


The same `migrate` script also prunes empty directories in the local media repository (`remote_content` and `remote_thumbnail`) after upload/delete operations.

So… you don't need to perform any maintenance yourself. So… you don't need to perform any maintenance yourself.


The schedule is defined in the format of systemd timer calendar. To edit the schedule, add the following configuration to your `vars.yml` file (adapt to your needs): The schedule is defined in the format of systemd timer calendar. To edit the schedule, add the following configuration to your `vars.yml` file (adapt to your needs):


+ 5
- 0
roles/custom/matrix-synapse/templates/synapse/ext/s3-storage-provider/bin/migrate.j2 Просмотреть файл

@@ -24,3 +24,8 @@ container_id=$(\
{% endfor %} {% endfor %}


{{ devture_systemd_docker_base_host_command_docker }} start --attach $container_id {{ devture_systemd_docker_base_host_command_docker }} start --attach $container_id

for prune_dir in "{{ matrix_synapse_storage_path }}/{{ matrix_synapse_media_store_directory_name }}/remote_content" "{{ matrix_synapse_storage_path }}/{{ matrix_synapse_media_store_directory_name }}/remote_thumbnail"; do
[ -d "$prune_dir" ] || continue
find "$prune_dir" -depth -mindepth 1 -type d -empty -print -delete
done

Загрузка…
Отмена
Сохранить