Help:CLI/cleanup: Difference between revisions
m (minor fixes) |
(cleanup add info) |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 8: | Line 8: | ||
=== Добавление нового правила удаления === | === Добавление нового правила удаления === | ||
<code>svacer server cleanup add-rule --project <project id or name> --branch <branch id or name> --snapshot <snapshot id or name> --time <nowiki><time></nowiki></code> | |||
Где: | Где: | ||
Line 14: | Line 14: | ||
* branch — ветка в которой искать снимки для удаления | * branch — ветка в которой искать снимки для удаления | ||
* snapshot — снимки которые удалять | * snapshot — снимки которые удалять | ||
* time — время | * time — время сколько должно пройти после создания снимка, чтобы его удалить, задается в формате Go Duration (например 33h5m). По умолчанию 720 часов (30 дней) | ||
Флаги для проекта, ветки и снимка можно задавать как имя либо как ID, также в имени может быть знак *, который равен "любому количеству любых символов". Если данные флаги не заданы, то автоматически подставляется * (любой проект, ветка, снимок | Флаги для проекта, ветки и снимка можно задавать как имя либо как ID, также в имени может быть знак *, который равен "любому количеству любых символов". Если данные флаги не заданы, то автоматически подставляется * (любой проект, ветка, снимок). | ||
=== Добавление запрета на удаление === | === Добавление запрета на удаление === | ||
<code>svacer server cleanup add-prohibition --project <project id or name> --branch <branch id or name> --snapshot <snapshot id or name></code> | |||
Флаги работают аналогично с <code>svacer server cleanup add-rule</code> | |||
=== Удаление правила === | === Удаление правила === | ||
Line 40: | Line 33: | ||
=== Вывести таблицу === | === Вывести таблицу === | ||
<code>svacer server cleanup list --type <rule|prohibition|log> --format <table|json></code> | |||
Где: | Где: | ||
Line 50: | Line 43: | ||
=== Примеры === | === Примеры === | ||
'''Добавление нового правила''' | '''Добавление нового правила''' | ||
<code>svacer server cleanup add-rule --user admin --password admin --project Devel* --branch 2025 --time "240h"</code> | |||
'''Добавление запрета на удаление''' | '''Добавление запрета на удаление''' | ||
<code>svacer server cleanup add-prohibition --user admin --password admin --project Devel* --branch 2025 --snapshot test*</code> | |||
'''Вывод данных таблиц''' | '''Вывод данных таблиц''' | ||
<code>svacer server cleanup list --user admin --password admin --type prohibition</code> | |||
[[File:Prohibition table.png|thumb|1017x1017px|none]] | [[File:Prohibition table.png|thumb|1017x1017px|none]] | ||
<code>svacer server cleanup list --user admin --password admin --type rule</code> | |||
[[File:Rules table.png|thumb|1012x1012px|none]] | [[File:Rules table.png|thumb|1012x1012px|none]] | ||
<code>svacer server cleanup list --user admin --password admin --type prohibition --format json</code> | |||
Вывод: | Вывод: | ||
<code>[{"Branch":"2025","CreatedBy":"admin","CreatedById":"00000000-0000-0000-0000-000000000000","DeleteTime":0,"ID":"7e2c2a12-3fd4-4bb2-8b3a-1f80d81c3bc5","Project":"Devel*","Snapshot":"test*","create_time":"2025-02-24T09:06:53.794742Z"}]</code> | |||
'''Удаление элемента из таблицы''' | '''Удаление элемента из таблицы''' | ||
<code>svacer server cleanup delete --user admin --password admin --id 878d1d1a-db1a-42a4-9557-ef568f68cd3e</code> |
Revision as of 14:53, 30 June 2025
Автоматическое удаление снимков
Удаление происходит раз в час, первое удаление всех подходящих снимков будет через 1 час после запуска сервера.
Применять может только пользователь с доступом ServerOperations.
Принцип работы: происходит проверка всех снимков на соответствие правилам удаления и правилам на запрет удаления, после этого происходит удаление и заносится отметка в таблицу удаленных снимков.
Добавление нового правила удаления
svacer server cleanup add-rule --project <project id or name> --branch <branch id or name> --snapshot <snapshot id or name> --time <time>
Где:
- project — проект в котором искать снимки для удаления
- branch — ветка в которой искать снимки для удаления
- snapshot — снимки которые удалять
- time — время сколько должно пройти после создания снимка, чтобы его удалить, задается в формате Go Duration (например 33h5m). По умолчанию 720 часов (30 дней)
Флаги для проекта, ветки и снимка можно задавать как имя либо как ID, также в имени может быть знак *, который равен "любому количеству любых символов". Если данные флаги не заданы, то автоматически подставляется * (любой проект, ветка, снимок).
Добавление запрета на удаление
svacer server cleanup add-prohibition --project <project id or name> --branch <branch id or name> --snapshot <snapshot id or name>
Флаги работают аналогично с svacer server cleanup add-rule
Удаление правила
svacer server cleanup delete --id <config id>
Где:
- id — id конфигурации из разрешенных к удалению или запрещенных к удалению
Вывести таблицу
svacer server cleanup list --type <rule|prohibition|log> --format <table|json>
Где:
- type — тип таблицы, которую нужно вывести
- rule — таблица удаляемых снимков
- prohibition — таблица запрещенных к удалению
- log — таблица удаленных снимков
- format — формат вывода: table — таблица (человекочитаемый вывод), json
Примеры
Добавление нового правила
svacer server cleanup add-rule --user admin --password admin --project Devel* --branch 2025 --time "240h"
Добавление запрета на удаление
svacer server cleanup add-prohibition --user admin --password admin --project Devel* --branch 2025 --snapshot test*
Вывод данных таблиц
svacer server cleanup list --user admin --password admin --type prohibition

svacer server cleanup list --user admin --password admin --type rule

svacer server cleanup list --user admin --password admin --type prohibition --format json
Вывод:
[{"Branch":"2025","CreatedBy":"admin","CreatedById":"00000000-0000-0000-0000-000000000000","DeleteTime":0,"ID":"7e2c2a12-3fd4-4bb2-8b3a-1f80d81c3bc5","Project":"Devel*","Snapshot":"test*","create_time":"2025-02-24T09:06:53.794742Z"}]
Удаление элемента из таблицы
svacer server cleanup delete --user admin --password admin --id 878d1d1a-db1a-42a4-9557-ef568f68cd3e