Help:CLI/cleanup: Difference between revisions
(CLI cleanup) |
m (review and minor fixes) |
||
Line 1: | Line 1: | ||
== Автоматическое удаление снимков == | |||
Удаление происходит раз в час, первое удаление всех подходящих снимков будет через 1 час после запуска сервера. | |||
Удаление происходит раз в час, первое удаление всех подходящих снимков будет через 1 час после запуска сервера. | |||
Применять может только пользователь с доступом ServerOperations. | Применять может только пользователь с доступом ServerOperations. | ||
'''Принцип работы:''' | '''Принцип работы:''' происходит проверка всех снимков на соответствие правилам удаления и правилам на запрет удаления, после этого происходит удаление и заносится отметка в таблицу удаленных снимков. | ||
=== Добавление нового правила удаления === | |||
<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> | <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> | ||
Где: | Где: | ||
* project — проект в котором искать снимки для удаления | |||
* branch — ветка в которой искать снимки для удаления | |||
* snapshot — снимки которые удалять | |||
* time — время сколько должно пройти после создания снимка, чтобы его удалить, задается в формате Go Duration (например 33h5m). По умолчанию 720 часов (30 дней) | |||
Флаги для проекта, ветки и снимка можно задавать как имя либо как 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-prohibition --project <project id or name> --branch <branch id or name> --snapshot <snapshot id or name></code> | ||
Line 28: | Line 24: | ||
Флаги работают аналогично с <code>svacer server cleanup add-rule</code> | Флаги работают аналогично с <code>svacer server cleanup add-rule</code> | ||
=== Удаление правила === | |||
<code>svacer server cleanup delete --id <config id></code> | <code>svacer server cleanup delete --id <config id></code> | ||
Где: | Где: | ||
* id — id конфигурации из разрешенных к удалению или запрещенных к удалению | |||
=== Вывести таблицу === | |||
<code>svacer server cleanup list --type <rule|prohibition|log> --format <table|json></code> | <code>svacer server cleanup list --type <rule|prohibition|log> --format <table|json></code> | ||
Где: | Где: | ||
* type — тип таблицы, которую нужно вывести | |||
:*rule — таблица удаляемых снимков | |||
:* prohibition — таблица запрещенных к удалению | |||
:* log — таблица удаленных снимков | |||
* format — формат вывода: table — таблица (человекочитаемый вывод), json | |||
=== Примеры === | |||
'''Добавление нового правила''' | |||
<code>svacer server cleanup add-rule --user admin --password admin --project Devel* --branch 2025 --time "240h"</code> | |||
'''Добавление | '''Добавление запрета на удаление''' | ||
<code>svacer server cleanup add- | <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> | <code>svacer server cleanup list --user admin --password admin --type prohibition</code> | ||
[[File:Prohibition table.png|thumb|1017x1017px|none]] | |||
<code>svacer server cleanup list --user admin --password admin --type rule</code> | <code>svacer server cleanup list --user admin --password admin --type rule</code> | ||
[[File:Rules table.png|thumb|1012x1012px]] | [[File:Rules table.png|thumb|1012x1012px|none]] | ||
Line 81: | Line 71: | ||
<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>[{"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> | <code>svacer server cleanup delete --user admin --password admin --id 878d1d1a-db1a-42a4-9557-ef568f68cd3e</code> |
Latest revision as of 16:25, 6 March 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